2013-11-26 189 views
0

我想找到一個特定的目錄的完整路徑和使用bash腳本路徑存儲在變量中的變量,如果它存在的目錄和存儲的完整路徑。 對於例如,我要搜索「紅寶石/ lib目錄」。其完整路徑是「在/ usr /共享/紅寶石/ lib目錄」,我想捕捉在進一步處理的變量這條道路。查找使用bash腳本

可能嗎?

回答

1

使用find之間沒有空格,你可以說:

find/-type d -path "*/ruby/lib" 

爲了捕獲結果到一個變量,說:

out=$(find/-type d -path "*/ruby/lib") 
+0

'find'聽起來不錯,因爲它是安裝在每個系統上(以相反'realpath'它必須安裝第一) – hek2mgl

+0

它的工作!謝謝。但它似乎有點緩慢。 – NagaLakshmi

+0

@NagaLakshmi這很慢,因爲你在根目錄下搜索。如果你相信它會存在的,說'/ usr',那麼你可以說'找到的/ usr型d -path「* /紅寶石/ lib目錄」'代替。 – devnull

0

(感謝@dstronczak),我會用readlink它。它:

path=$(readlink -f ruby/lib) 

注意必須有path=

+2

您也可以使用'的readlink -f',而不是'realpath'。 – dstronczak

+0

謝謝,好多了! :) – hek2mgl

+1

歡迎:)回到那天,我真的習慣於在我的ubuntu機器上運行'realpath'。現在我傾向於使用別名:'別名真實路徑='的readlink -f'';) – dstronczak