我试图颠倒多个文本文件的顺序(用于绘图目的),这些文本基本上是数字行。我尝试使用tac
并将其与find
和-exec
合并为
find ./dir1/dir2/ -name foo.txt -type f -exec tac {} \;
但这只会在屏幕上显示输出,而不会修改预期的文件。
我在这里错过了什么吗?
答案 0 :(得分:1)
你几乎就在那里 - tac
写信给stdout
所以你可以简单地将输出重定向到一个方便的位置:
find .... \; > newfoo.txt
如果您希望每个文件都被反转并写入同一位置,则会执行以下操作:
find . -type f -exec sh -c 'tac "$1" > "$1"-new' -- {} \;
干杯,