2010-08-27 87 views

回答

26
dirname = File.basename(Dir.getwd) 

File.basename()返回,即使它的參數是一個目錄的路徑基本名稱之一。

下面的代碼打印kiamlaluno對我來說,在/家庭/ kiamlaluno是我的Ubuntu安裝的主目錄。

puts File.basename('/home/kiamlaluno') 

同樣不puts File.basename(Dir.getwd),在當前目錄爲/ home/kiamlaluno。

+0

+1雖然w.r.t有些誤導。可讀性 – Gishu 2010-08-27 13:09:32

7
irb(main):001:0> Dir.getwd 
=> "C:/Documents and Settings/UserName" 

還是我誤解了你的問題?

更新:嘗試以下

File.split(Dir.getwd)[-1] 
Pathname.new(Dir.getwd).basename.to_s 
+0

是的,我想只有當前的文件夾名稱,而不是文件夾路徑。在這種情況下:用戶名。有沒有辦法在Ruby中做到這一點,或者你必須使用正則表達式? – 2010-08-27 12:27:41

+2

File.basename(Dir.getwd)將只返回最後一個文件夾名稱。 – Teoulas 2010-08-27 12:45:26

+1

@ajsie - 請參閱更新。 – Gishu 2010-08-27 12:52:56

相關問題