我們的應召職員意外刪除了我們的生產服務器中的文件。找不同。 -name'* .xyz'(點空格連字符)並查找。 .name'* .xyz'(點空格點)
我指示他發出find命令來刪除像這樣流浪文件(注意find dot space hyphen
)
find . -name '*.xyz' -exec rm '{}' \;
但隨着他複製/從我的電子郵件粘貼命令他的shell會話,連字符改爲點(我親眼目睹了他拿給我),下面的命令被執行(通知find dot space dot
)
find . .name '*.xyz' -exec rm '{}' \;
這本地和遞歸刪除的文件。包括符號鏈接。謝天謝地,我們能夠從備份中恢復所有內容。
我服務器上的手冊頁只有-name
標誌。沒有關於.name
。爲什麼find
忽略我指定的文件擴展名?
我們的Red Hat Enterprise Linux服務器上釋放5.10(Tikanga),運行KSH 93
沒有什麼特別的'.'s。 – simonzack 2014-12-02 15:39:17