2017-08-29 190 views
1

我試圖使用ls命令列出目錄中的特定子目錄。特定名稱約定的ls命令

子目錄有以下命名約定:

abc.wiki.git 
abc.git 
cde.wiki.git 
cde.git 
fgh.wiki.git 
fgh.git 

我只想列出沒有名稱中「維基」的子目錄。

+3

的[列表文件不匹配模式?(https://stackoverflow.com/questions/8525437/list-files-not-matching-a-pattern)可能的複製 – bishop

回答

0

如果你想看到在上述子文件夾都可以使用:

ls | grep -v wiki | xargs ls 

如果你不希望看到每個子目錄裏面只是用:

ls | grep -v wiki 
+0

爲什麼'| xargs ls'? – axiac

+0

@axiac我以爲他想看看每個git文件夾裏面沒有wiki名稱? –

+1

將結果傳遞給'xargs ls'的一個很好的理由是用標誌調用'ls'。例如,第一個'ls'只列出文件和目錄名,第二個'ls'可以用'-a'調用。 – axiac

1

我認爲這個用例,find更聰明。

$ find . -type d -not -name "*wiki*"