Egrep在bash脚本函数中的多行

时间:2013-12-18 11:33:12

标签: bash function grep

我有一个函数来检查文件与多个由管道分隔的长字符串。我想将脚本中的每个字符串放在一个新行上,这样它就更具可读性。我尝试在每行的末尾添加反斜杠,但它们只是在grep语句中被捕获。

my_function () {
sudo zcat my_file.gz |
egrep -c 'my_long_string_1 |
my_long_string_2 |
my_long_string_3'
}

这会输出一个结果,但是不正确。

1 个答案:

答案 0 :(得分:1)

在多行上使用这样的egrep:

my_function () {
   sudo zcat my_file.gz |
   egrep -c "my_long_string_1|\
   my_long_string_2|\
   my_long_string_3"
}

确保backslash之前或之后没有空格,并且在每个egrep模式之前新行上没有空格。