如何在Ruby中获取当前目录的名称?

问题描述:

如何在Ruby中获取当前目录的名称?我找到的全部是File.dirname(__FILE__),但是只返回.,我想要实际的名字。我该怎么做呢?如何在Ruby中获取当前目录的名称?

dirname = File.basename(Dir.getwd) 

File.basename()返回,即使它的参数是一个目录的路径基本名称。

为了得到绝对路径Dir.pwd似乎这样的伎俩。

File.expand_path(File.dirname(File.dirname(__FILE__))) 
+5

为什么这两个'dirnames'? –

在Ruby 2.0或更高版本,可以使用Kernel#__dir__

__dir__ 

从文档:

返回文件 的目录从中调用此方法的规范化的绝对​​路径。

+0

正如问题中提到的那样 - “只返回,并且我想要实际名称”(对于ruby> = 2.0.0,例如Ruby 2.3.3也是如此)。 –