对于一个目录中的所有文件,有没有办法将'head -1‘和'grep’命令组合成一个命令,并将输出重定向到输出文件。我可以使用'sed‘来做这件事,但是它似乎没有grep那么快。
sed -n '1p;/6330162/p' infile*.txt > outfile.txt使用grep,我可以一次执行以下一个文件:
head -1 infile1.txt; grep -i '6330162' infile1.txt > outfile.txt但是,我需要对目录中的所有文件执行此操作。插入通配符没有任何帮助,因为它先打印报头,然后打印grep输出。
发布于 2012-10-17 18:14:02
嗨,好奇,你可以在cmd中使用xargs。
find /mahesh -type f |xargs -I {} -t /bin/sh -c "head -1 {}>>/tmp/out.x|grep -i 6330162 {} >>/tmp/out.x"其中/mahesh是存放文件的目录,输出放在/tmp/out.x中
https://stackoverflow.com/questions/12920317
复制相似问题