1

我是perl这里的菜鸟,想从我的 unix 机器的命令行运行它。

./myprog.pl $str1 str2

我需要替换str2的地方str1。麻烦的是我不知道如何从争论$中逃脱。str1我尝试在这里和其他网站上查看,但我找不到任何东西。任何帮助将不胜感激!

4

1 回答 1

1

什么壳?是 bourne-shell 还是派生的,那么以下两个都将传递$str1str2程序。

./myprog.pl '$str1' str2

./myprog.pl \$str1 str2

但是你说的是“替换”。第一个 arg 是否假设是匹配的正则表达式模式$str1?如果是这样,那么您可以使用以下任一方法:

./myprog.pl '\$str1' str2

./myprog.pl \\\$str1 str2

$为正则表达式引擎转义(通过添加 a \),然后为 shell 转义\and $(通过添加引号或额外\的 s)。

于 2013-05-31T02:34:25.463 回答