我正在嘗試使用以下命令將不同目錄中的多個檔案連接在一起:
~$ find . -name ‘*.text’ -exec cat {} >> combined.text \;
然而,它似乎不起作用,因為我得到的答覆是:
find: missing argument to `-exec'
有什麼我可能錯過的嗎?
謝謝你!
答案1
您正在使用 unicode 引號:‘’
而不是普通引號 ( ''
)。嘗試使用以下命令:
find . -name '*.text' -exec cat {} + >> combined.text
但是,如果combined.text
已經存在,則會列印警告,因為combined.text
將在啟動之前創建,find
因此可以透過以下命令找到find
:
$ find . -name '*.text' -exec cat {} + >> combined.text
cat: ./combined.text: input file is output file
您可以透過以下方式避免這種情況:
find . -name '*.text' ! -name combined.text -exec cat {} + >> combined.text