曲径通幽论坛

标题: 在命令行中使用 perl 命令 [打印本页]

作者: beyes    时间: 2011-10-6 14:05
标题: 在命令行中使用 perl 命令
如果执行的 perl 语句不多,那可以不必写到文件里,可以直接在命令上使用 perl 命令来进行处理。

一般可以如下使用:
perl -p -i.bak -e 's/hello/HELLO/' temp.txt

在上面命令中,perl 命令就如同在文件的开头写上 #!/usr/bin/perl ,表示以 perl 程序来处理随后的脚本。

-p 选项可以让 Perl 自动生成类似于下面的一小段程序:
[code=perl]while (<>) {
   print;
}[/mw_shl_code]
实际上就是读取命令行参数中所给出的文件,然后打印出经过 -e 选项后面指定的脚本处理过的内容。是的,-e 选项后面就是要接程序代码的。但是如果这里没有 -i 选项,那么处理的内容结果不会写到文件中,而是打印到终端。而 -i 选项的作用就相当于变量 $^I ,关于该变量的作用可参考:
备份文件变量($^I)





欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2