我想批量显示某个目录下某行文件的文本,通常可以用下面的命令来实现:
for file in `find ./ -name "results.txt"`;
do
sed -n '12p' < ${file};
done
在每个文件名“results.txt”的第12行,有我要输出的文本。
但是,我想知道是否可以使用管道命令来执行此操作。我尝试了以下命令:
find ./ -name "results.txt" | xargs sed -n '12p'
或
find ./ -name "results.txt" | xargs sed -n '12p' < {} \;
但两者都不能正常工作。 你能给一些建议或推荐一些引用资料吗? 欢迎大家多多指教!
最佳答案
应该这样做
find ./ -name results.txt -exec sed '12!d' {} ';'
关于bash - 在bash中,如何批量显示文件中某行的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24196664/