添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

perl + 只有在与行中的字符串完全匹配时才删除该行

1 人关注

I work on the following file:

more file1
name="UAT/CC/Global/MES/UK/adWerum-UK" 
name="UAT/CC/Global/MES/UK/adWerum-UK-Adapter" 
name="UAT/CC/Global/MES/UK/adWerum-UK1" 
name="HOME/UAT/CC/Global/ME/UK/adWerum-UK" 

我创建了以下perl命令,以便只删除带有反斜线的字符串。

UAT/CC/Global/ME/UK/adWerum-UK

perl的语法。

perl -n -i -e 'print unless m/\Q$ENV{A}\E/' file1

问题是perl删除了所有包含该行的行。

UAT/CC/Global/ME/UK/adWerum-UK    
A=UAT/CC/Global/MES/UK/adWerum-UK
export A=UAT/CC/Global/ME/UK/adWerum-UK
perl -n -i -e 'print unless m/\Q$ENV{A}\E/' file1
more file1
file is empty

虽然预期的结果是

name="UAT/CC/Global/MES/UK/adWerum-UK-Adapter" 
name="UAT/CC/Global/MES/UK/adWerum-UK1" 
name="HOME/UAT/CC/Global/ME/UK/adWerum-UK" 

请告知我的perl语法需要做什么修改,以便只删除双倍配额之间的匹配字符串的行。