Linux

在 find /mnt/tmp -atime +91 -exec rm -f {} ; 中未使用“{}”的結果?

  • November 21, 2013

在我接管的系統上,我使用以下程式碼的時間最長:

find /mnt/tmp -atime +91 -exec rm -f {} \;

然而,進一步研究我看到每個人都說花括號應該用單引號括起來,如下所示:

find /mnt/tmp -atime +91 -exec rm -f '{}' \;

我以前從未遇到過問題,但我很好奇不使用單引號可能產生的任何負面影響。還好奇它是否因 Linux 風格而異?

伺服器是 Ubuntu。

如果您的文件名中有“特殊”字元(與正則表達式類型的特殊字元不同),您所說的影響就會顯現出來。最明顯的是,如果您有一個名為的文件foo /*-您的 rm 命令將在沒有單引號的情況下刪除foo/*而您可能不希望這樣做。

引用自:https://serverfault.com/questions/556595