find -L/-samefile /path/to/file -exec ls -ld {} +
{} +
是什麼意思?在find命令中,最後的「{} +」是什麼意思?
實施例從CommandLineFu
find -L/-samefile /path/to/file -exec ls -ld {} +
{} +
是什麼意思?在find命令中,最後的「{} +」是什麼意思?
實施例從CommandLineFu
這就是-exec
選項find
的一部分; {}
擴展爲當前文件名,並且+
(不可移植;應該是\;
或3210或類似)指示命令參數的結尾。
這是find
命令語法的一部分。當給每個匹配執行子命令find
時,必須在參數列表中插入{}
以指示find
應該放置當前文件的路徑名。該子命令由分號(引用以避免由shell解析)或加號結束,後者表示find
應儘可能多地用盡可能多的路徑名替換{}
,與此相反,每次只有一個;
。
感謝您指出'+'和';'之間的區別 –
實際上,我最近發現''是POSIX 2008的[find](http://pubs.opengroup.org/onlinepubs/9699919799/toc.htm)中的標準。你可能仍然對'不是所有的便攜式「,因爲並非所有的系統都支持它,但它是一種標準符號。 –
@Jonathan:在Solaris上,您需要使用POSIX/XPG版本的「find」才能正常工作。 – geekosaur