我是perl这里的菜鸟,想从我的 unix 机器的命令行运行它。
./myprog.pl $str1 str2
我需要替换str2的地方str1。麻烦的是我不知道如何从争论$中逃脱。str1我尝试在这里和其他网站上查看,但我找不到任何东西。任何帮助将不胜感激!
什么壳?是 bourne-shell 还是派生的,那么以下两个都将传递$str1给str2程序。
./myprog.pl '$str1' str2
./myprog.pl \$str1 str2
但是你说的是“替换”。第一个 arg 是否假设是匹配的正则表达式模式$str1?如果是这样,那么您可以使用以下任一方法:
./myprog.pl '\$str1' str2
./myprog.pl \\\$str1 str2
这$为正则表达式引擎转义(通过添加 a \),然后为 shell 转义\and $(通过添加引号或额外\的 s)。