2017-04-03 55 views
0

换行符我声明了一个字符串以两个换行符字符串内壳 - 检查,如果文件中包含字符串里面

somestring = $'\ n #####分行冻结启用/禁用\ nRelease: “

我有一个$文件与文本中这样

############################### 

##### Branch RELEASE enable/disable 
Release: disable 

##### Branch FREEZE enable/disable 
Freeze: disable 

##### Mail list ##### 

我想弄清楚,如果里面有既换行符的字符串命令

if grep -q“$ somestring”“$ file”;然后 回声“发现字符串”

但是,结果总是正面的,当字符串中有一个换行符时。

如何使其正确使用换行符?

回答

0

grep模式匹配个别行,所以模式无法匹配输入中找到的换行符。

尝试pcregrep代替普通的grep:

pcregrep -M "pattern1.*\n.*pattern2" filename 

-M选项允许其跨多行匹配,这样你就可以搜索换行符\ n。

相关问题