如何使用Perl或shell替换所有类型的字符串meta / alphanumeric /

时间:2016-08-26 12:56:49

标签: regex string perl shell metacharacters

sed -i 's/'$search'/'$replace'/g' $file

此命令只能替换字符串..但我想搜索并替换文件中的任何类型的字符串

例如:如果我提供输入

 $search= /jms/CodeBasev1.23*
 $replace= /jms/CodeBasev1.24/baseline*.

它应该搜索确切的字符串并替换确切的行..不仅使用斜杠而且还应该接受元字符

ex:[..],%,&,().. iec

1 个答案:

答案 0 :(得分:0)

perl -0777 -pi -e's/\Q$ENV{search}/$ENV{replace}/g' $file
仅当搜索字符串包含文字换行符时,才需要

-0777