曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 3540|回复: 0
打印 上一主题 下一主题

在命令行中使用 perl 命令

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34397
跳转到指定楼层
楼主
发表于 2011-10-6 14:05:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果执行的 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)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-7-4 09:43 , Processed in 0.065914 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表