循环

时间:2017-12-19 22:42:36

标签: grep tcsh

我正在使用像

这样的简单grep
grep -E "input files : 0" *.stdout

,其输出如下:

QCD_HT200to300_13TeV_ext.stdout:==> Total number of input files : 0
WJetsToLNu_HT_600To800_13TeV_ext1.stdout:==> Total number of input files : 0

如果我在for循环中使用相同的grep命令,那么它的输出就不好了。我的脚本是

 foreach file ( `grep -E "input files : 0" *.stdout` )
         echo $file
 end

这个输出就像:

QCD_HT200to300_13TeV_ext.stdout:==>
Total
number
of
input
files
:
0
WJetsToLNu_HT_600To800_13TeV_ext1.stdout:==>
Total
number
of
input
files
:
0

我如何在foreach循环中获得与grep命令独立运行相同的输出。

1 个答案:

答案 0 :(得分:1)

使用文件列表在foreach循环中迭代并在foreach循环中执行grep。

set files = `ls *.stdout`

foreach file ( $files )
   grep -E "input files : 0” $file
end