我有一个简短的perl脚本运行正则表达式替换文件:
perl -pi -e 's/x/y/' <file>
我想将一个参数传递给脚本,所以它将用命令行参数替换y(例如,类似perl -pi -e 's/x/$argv[1]/' <file>但我使用$ argv [1]不会使用-pi参数时工作.
我从来没有理解对单行Perl程序的关注,我不明白为什么你不能写一个Perl脚本文件来做这件事.
但是,您可以@ARGV在-p循环开始之前从项目中删除项目并将其保存在变量中.像这样
perl -p -i -e 'BEGIN{ $r = pop } s/x/$r/' <file> <replacement>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
140 次 |
| 最近记录: |