find -name "?"
find ~ -name "?"
為什麼其中一個指令找到.
而另一個指令找不到?如何使第二個版本具有明確路徑,.
在指定的目錄中找到該條目以及任何其他單字元檔案?
find (GNU findutils) 4.5.11
萬一重要的話...
答案1
如果沒有starting point
for find
,它使用.
(目前目錄)。事實上,這兩行將產生相同的輸出:
find -name "?"
find . -name "?"
能夠指定起點和找到find
目錄.
,加入/.
到您的起點,即:
find ~/. -name "?"
編輯:現在對於為什麼的問題,我們來比較一下這兩個指令:
find ~/. -name "?"
find ~ -name "?"
他們的輸出有兩點不同。首先,命令 with/.
產生的結果在每行中都有一個額外的內容/.
,正如預期的那樣。其次,這是OP的根本問題,是指令/.
找到~/.
偽目錄本身,但~
指令卻找不到。這是因為~/.
搜尋明確要求.
進行搜尋。除非在命令列上列出find
,否則find
忽略.
和..
偽目錄。 (你能想像如果沒有的話嗎?)
請參閱man find
以獲取更多資訊。