2017-02-17 146 views
1

我有一組在一個樹形結構嵌套目錄,並在樹的底部,每個目錄包含另一個名爲「傾銷」的目錄。創建具有路徑列表的文件(嵌套目錄)

我想創建一個名爲「路徑」與所有路徑「轉儲」目錄每一個由一個新行分隔的文件。

我的嘗試是:

echo ./*/*/*/dump | cat >paths 

這類作品,但路徑不被新線分離。我怎麼能實現這一點,可能使用回聲和貓?

+0

我是唯一一個,那沒有幫你嗎?你想創建'/.../.../.../.../ dump'文件?或者你想創建包含這些路徑的文件?那些'/..../../ dump'行的源輸入在哪裏? – Kent

+0

@Kent我想創建包含這些路徑的文件。 – valerio

回答

1

您可以使用find代替:

find . -type d -path '*/dump' > paths 

或否則只需在您的glob中將echo替換成printf

printf "%s\n" ./*/*/*/dump >paths 
+1

我喜歡用printf的那個,看起來是最簡單最優雅的解決方案。 – valerio

1

使用echo在一時刻(-n1)水珠和管道它xargs一條線,並將其寫入該文件作爲

echo ./*/*/*/dump | xargs -n1 > file 
+0

@ jm666:燁會我想,'xargs'可以通過空閱讀分隔值,由我不能讓它管道'xargs'的方式。你有建議還是不能完成? – Inian