Shell
為什麼三重問號萬用字元 (???) 不適用於 ls?
我正在嘗試列出所有名稱為 3 個字元的文件
/usr/bin
。
ls ???
應該這樣做,但它列出了目錄中的每個文件。請注意,它ls ????
按預期工作,僅顯示名稱為 4 個字元的文件。它也適用於 1、2、5 以及除 3 之外的所有數字。重現步驟:
- 去
/usr/bin
- 類型
ls ???
哦,我找到了: ls 將列出您在命令行中傳遞的目錄的內容。至少在我嘗試過的 Ubuntu 上,有
/usr/bin/X11/
一個指向/usr/bin/
. 所以你確實首先得到了三個字母的文件,然後你又得到了所有的內容/usr/bin
,這會滾動出所有其他的。(試著ls ??? | less
看看這個。)