perl – 简单的搜索和替换,没有正则表达式

我有一个带有各种通配符的文件,我想要从(bash) shell脚本中替换.我有以下功能很好,直到其中一个变量包含特殊的正则表达式的字符:
VERSION="1.0"
perl -i -pe "s/VERSION/${VERSION}/g" txtfile.txt   # no problems here

APP_NAME="../../path/to/myapp"
perl -i -pe "s/APP_NAME/${APP_NAME}/g" txtfile.txt  # Error!

所以我想要一些只是执行文字替换而不是正则表达式的东西.有没有简单的单行调用与perl或另一个工具,这样做?

解决方法

以下内容如下:
perl -i -pe "s|APP_NAME|\\Q${APP_NAME}|g" txtfile.txt

由于垂直杆不是路径的一部分的合法性质,所以你很好.

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...