ls -AF /var/ |grep \/$
幫助我找到從目錄中的所有目錄,沒有更多的信息。 現在我需要完全相反 - 顯示所有文件沒有任何進一步的信息,只是在文件名中的每一行
file1
file2
file3
和過濾,因爲這些目錄 - 我不需要
ls -AF /var/ |grep \/$
幫助我找到從目錄中的所有目錄,沒有更多的信息。 現在我需要完全相反 - 顯示所有文件沒有任何進一步的信息,只是在文件名中的每一行
file1
file2
file3
和過濾,因爲這些目錄 - 我不需要
爲了找到匹配某個表達式的文件,存在find
。它的手冊非常好,還包括一些有趣的例子。對於只得到一個目錄的文件,你可以使用:
find /var -maxdepth 1 -type f -printf "%f\n"
只需使用-v
開關爲grep
可以反轉匹配:
ls -AF /var/ |grep -v /$
或者使用發現:
find -maxdepth 1 -type f /var/
該命令的幾個問題。路徑丟失,'-maxdepth'必須在'-type'之前,並且它沒有給出OP想要的內容(只顯示沒有路徑的文件名) –
'path'不是強制性的,但是你需要'-maxdepth'在'-type'之前 – c00kiemon5ter
如果目標目錄不是pwd,那麼這個路徑是必需的,在這個問題中似乎是這種情況。 –
ls -1Ap /var/ | grep -v /
類似@ choroba的答案,但這個版本將列出在每一行乾淨的文件名稱,而不附加額外的分類指標,如果你不想要他們。
-p標誌追加/到目錄
-1標誌總是得心應手列出每行一個文件
@piokuc而如何將聯機幫助頁在這種情況下'ls'幫助? –