0

使用 awk,如何将数据重定向到目录中的所有文件?

就像,假设我想重定向到 file.txt 我会这样做:

echo "abc"|awk '{print >"file.txt"}'

除了目录中的多个文件(实际上是所有文件)之外,我怎样才能实现相同的目标。cirrent 目录中有一些 .txt 文件。所以我想将 abc 重定向到当前目录中扩展名为 .txt 的所有文件。

4

3 回答 3

1

您可以使用tee

echo "abc" | tee files/*

如果包含所有这些文件的目录位于/files/.

于 2012-08-08T08:37:22.637 回答
0
echo abc|awk '{print |"tee files"}'
于 2012-08-08T08:39:40.343 回答
0

一种使用方式GNU awk

awk -v str="abc" '{ print str > FILENAME; nextfile }' *.txt

txt此命令将覆盖所有带有字符串扩展名的文件的所有内容abc。您将需要该GNU版本,因为该nextfile指令会关闭当前文件并开始处理下一个文件。

于 2012-08-08T09:18:08.653 回答