Bash

如何在多個文件上“回顯”> x

  • December 29, 2020

如何在 bash 中清空一堆文件的最佳方法是什麼?到目前為止,我一直在這樣做

echo "" > development.log
echo "" > production.log

我真的不想刪除這些文件,所以rm是不可能的。我嘗試了很多事情,比如

echo "" > *.log

但沒有任何效果。

你不需要迴聲。只是

>filename

將清空文件。要編輯 rassie…

for FILE in *.log
do
  >"${FILE}"
done

引號和方括號是首選,因為它們可以正確處理包含空格或特殊字元的文件。

只是為了好玩,另一個結合 Eric Dennisfind和其他人重定向的變體:

find . -name "*.log" -exec sh -c ">{}" \;

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