Kann ein Ruby-Skript sagen, in welchem Verzeichnis es ist in?
Inspiriert durch "Immer das source-Verzeichnis von einem Bash-Skript aus", was die Ruby Weg, dies zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Inspiriert durch "Immer das source-Verzeichnis von einem Bash-Skript aus", was die Ruby Weg, dies zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
File.dirname(__FILE__)
geben Sie den relativen Pfad an das Skript ausgeführt wird.File.expand_path(File.dirname(__FILE__))
geben Sie den absoluten Pfad an.__dir__
ist der richtige Weg, das zu tun.Verwenden
__dir__
Als Ruby 2.0,
__dir__
ist der einfachste Weg, diese zu bekommen. EsSehen die
__dir__
Dokumentation, und "Warum ist __FILE__ groß und __dir__ Kleinbuchstaben?".__dir__
die richtige Antwort, danke auch für die Verlinkung zu den groß-vs. Kleinschreibung Unterschied, war meine erste Frage zu finden, nachdem es so gut 🙂verwenden
__dir__
File.dirname(__FILE__)
ist nicht eine richtige Weg, um Verzeichnis wo das Skript gespeichert ist.Beim starten, Arbeitsverzeichnis und das Verzeichnis mit Skript-Datei ist die gleiche, aber es kann sich ändern.
Beispiel:
script-Datei gespeichert
/Desktop/tmp
läuft wird es geben AusgabeENV["PWD"] scheint der einfachste Weg für mich unter Linux. Ich weiß nicht, von einem OS-agnostisch Weg.
Dir.pwd
zu Holen Sie sich die aktuellen Arbeits-Verzeichnis...