問題開頭的所有目錄:LS發現以./
從你的home目錄內,執行LS操作顯示所有 目錄,以開展「」你不應該看到純文件,並且你不應該看到這些目錄的內容。例如:
〜$ LS _ __ _ _ ../ ./的.ssh/.ssh2目錄/ .sunw/.tin/
我跑
ls -R . -d | grep ./
,它似乎工作。
但是,當我運行ls -R . -d
時,我注意到即使使用-d也列出了這些文件。爲什麼會發生?
問題開頭的所有目錄:LS發現以./
從你的home目錄內,執行LS操作顯示所有 目錄,以開展「」你不應該看到純文件,並且你不應該看到這些目錄的內容。例如:
〜$ LS _ __ _ _ ../ ./的.ssh/.ssh2目錄/ .sunw/.tin/
我跑
ls -R . -d | grep ./
,它似乎工作。
但是,當我運行ls -R . -d
時,我注意到即使使用-d也列出了這些文件。爲什麼會發生?
我覺得你被要求出示所有的 「點」 目錄,即
ls -ad .*/
謝謝你,似乎工作,但你怎麼找到'-ad'的標誌?我注意到它沒有出現在手冊頁中。 '-ad'代表什麼,爲什麼我的命令不正確地返回這麼多結果? – user1431282 2013-02-17 02:01:59
'-ad'是兩個標誌:'-a'和'-d'。這相當於'ls -a -d。* /'但更短;-)儘管你不需要'-a',看到我的回答和解釋。 – janos 2013-02-17 02:03:56
(最短)的回答是:
ls -d .*/
因爲:
.*/
所有以「。」開頭的目錄都是。-d
是在年底沒有看到這些目錄的內容沒有/
,你會看到純文本文件,這將是錯誤的答案。
沒有-d
標誌,你會看到目錄的內容,這將是錯誤的答案。
沒有其他標誌是必要的。
'ls -R。 -d'只給我''。 – Makoto 2013-02-17 01:53:25
是不是應該遞歸搜索當前目錄並列出目錄? – user1431282 2013-02-17 01:54:17
我不相信你需要在這裏遞歸。 – squiguy 2013-02-17 01:54:55