在Ruby中获取当前目录的父目录
我明白我可以通过获取当前目录
$CurrentDir = Dir.pwd
那当前目录的父目录呢?
File.expand_path("..", Dir.pwd)
也许最简单的解决scheme:
puts File.expand_path('../.')
我认为更简单的解决scheme是使用File.dirname
:
2.3.0 :005 > Dir.pwd => "/Users/kbennett/temp" 2.3.0 :006 > File.dirname(Dir.pwd) => "/Users/kbennett" 2.3.0 :007 > File.basename(Dir.pwd) => "temp"
File.basename
返回File.dirname
不包含的path的组件。
当然,这只有在filespec是绝对的而不是相对的情况下才起作用。 为了确保绝对可以做到这一点:
2.3.0 :008 > File.expand_path('.') => "/Users/kbennett/temp" 2.3.0 :009 > File.dirname(File.expand_path('.')) => "/Users/kbennett"