ruby - cómo obtener la ruta absoluta del directorio de trabajo actual de irb
working-directory current-working-directory (6)
A través de esto, puede obtener la ruta absoluta de cualquier archivo ubicado en cualquier directorio.
File.join(Dir.pwd,''some-dir'',''some-file-name'')
Esto volverá
=> "/User/abc/xyz/some-dir/some-file-name"
Estoy ejecutando Ruby en Windows, aunque no sé si eso debería hacer una diferencia. Todo lo que quiero hacer es obtener la ruta absoluta del directorio de trabajo actual. ¿Es esto posible desde el irb? Aparentemente desde un script es posible usar File.expand_path(__FILE__)
Pero de irb intenté lo siguiente y obtuve un error de "Permiso denegado":
File.new(Dir.new(".").path).expand
En cuanto a la ruta relativa al script de ejecución actual, desde Ruby 2.0 también puede usar
__dir__
Así que esto es básicamente lo mismo que
File.dirname(__FILE__)
Esto le dará el directorio de trabajo del archivo actual.
File.dirname(__FILE__)
Ejemplo:
archivo_actual: "/Users/nemrow/SITM/folder1/folder2/amazon.rb"
resultado: "/ Users / nemrow / SITM / folder1 / folder2"
Si desea obtener la ruta completa del directorio del archivo rb actual:
File.expand_path(''../'', __FILE__)
Dir.pwd
parece hacer el truco.
File.expand_path File.dirname(__FILE__)
devolverá el directorio relativo al archivo desde el que se llama este comando.
Pero Dir.pwd
devuelve el directorio de trabajo (resultados idénticos a ejecutar pwd
en su terminal)