工作中的線上環境有很多的perl命令行的類似一句話的命令,今天總結下perl的命令行編程的一些東西。
-e 后面緊跟著引號里面的字符串是要執行的命令:
復制代碼 代碼如下:
king@king:~$ perl -e ‘print “hello world /n”‘
hello world
如果是多個命令就可以使用多個-e,這里是不是想到了sed呢?但是要注意的是中間的哪個“;”.
復制代碼 代碼如下:
king@king:~$ perl -e ‘print “hello world /n” ;' -e ‘print “my first perl command line script /n”‘
hello world
my first perl command line script
-M 導入要使用的模塊:
復制代碼 代碼如下:
king@king:~$ perl -MLWP::Simple -e'print head “http://www.chinacache.com”,”/n”‘
text/html; charset=utf-81337525116978307200Apache/2.2.3 (CentOS)
另外-M可以判斷某個模塊是不是已經安裝了-m 的功能和-M類似,區別在于-M 模塊名等同于use 模塊名,這樣會把一些默認的函數或者其它東西引進過來,-m 模塊名 則會關閉這些默認值,這樣可以引入一些你只使用的函數;例如上面的例子:
換成-m的話就不會有任何輸出;-m 和 -M 通過 = 來引入某個模塊的特別函數.
復制代碼 代碼如下:
perl -MCGI='header,start_html' -e ‘print header, start_html'
-w 等同于use warnings
-n -p 都會使用 <> 將所有 @ARGV 參數當作文件來逐行運行(有循環的意思哦,經常和其它參數一起處理文件),會將讀入的內容隱式的逐一按行來遍歷文件.每一行將缺省保存在 $_;但-p 會將內容“重復”打印出來,而-n更傾向與打印滿足某種條件的行(這這里還有一些有用的變量比如$. 表示當前行的行數):
復制代碼 代碼如下:
king@king:~$ cat file.txt
A 1
B 2
C 3
king@king:~$ perl -p -e ‘print ‘ file.txt
A 1
A 1
B 2
B 2
C 3
C 3
king@king:~$ perl -n -e ‘print ‘ file.txt
A 1
B 2
C 3
看到這里是不是想到了sed的-n 的特性:
復制代碼 代碼如下:
king@king:~$ sed -ne ‘p' file.txt
A 1
B 2
C 3
king@king:~$ sed -e ‘p' file.txt
A 1
A 1
B 2
B 2
C 3
C 3
-i 將修改直接的寫入文件,這個和sed也是一樣的哦;
復制代碼 代碼如下:
king@king:~$ cat file.txt
A 1
B 2
C 3
king@king:~$ perl -pi -e ‘s/A/a/' file.txt
king@king:~$ cat file.txt
a 1
B 2
C 3
-a 打開自動分離 (split) 模式. 空格是缺省的分離號. 輸入根據分離號被分離然后放入缺省數組 @F.
復制代碼 代碼如下:
king@king:~$ perl -na -e ‘print $F[1],”/n”‘ file.txt
1
2
3
和awk是不是很像?還有更像的,那就是-F,和awk一樣更改字段之間的分割符,默認是空格和tab;
復制代碼 代碼如下:
king@king:~$ perl -F':' -alne ‘print $F[0],” “,$F[-1] if /bash$/' /etc/passwd
root /bin/bash
king /bin/bash
guest-b0SIey /bin/bash
看到上面的那個-l的參數沒?它的最主要的作用就是chomp字段和在每個輸出的后面加上“/n”,讓輸出換行;是不是挺有用的呢?有沒有其它和awk有類似的地方呢?答案是肯定的,
BEGIN{},END{} 是不是也很熟悉呢?
以下是一些常用的簡單實例
#perl -pi -e's/aaa/bbb/' filename 修改當前file文件中的文件,不生成中間文件,速度很快.記住 -i 開關,因為它讓你原地編輯文件.
#perl -ne ‘print if /^aaaaa/' filename 象grep一樣過濾文件中需要的內容.這個地方,使用了-n,所以一次是做一行的操作,直到整個文件讀完.另外,在管道時,-n也會一樣,來遍歷管道送過來的內容.
#perl -n -e ‘print “$.
主站蜘蛛池模板:
黄色片网站免费
|
欧美一区二区三区中文字幕
|
国产精品男女
|
色999中文字幕
|
91短视频在线播放
|
国产精品久久久久久久午夜片
|
国产精品免费久久久
|
精品国产91久久久久久久
|
毛片国产
|
毛片在线免费
|
国产一区免费在线
|
万圣街在线观看免费完整版
|
一级片999
|
精品国产96亚洲一区二区三区
|
亚洲影视在线观看
|
精品国产一区二区三区久久久狼牙
|
国产精品伊人久久
|
深夜福利久久久
|
亚洲午夜影院在线观看
|
一级电影在线免费观看
|
亚洲成人午夜精品
|
免费黄色小视频网站
|
国色天香综合网
|
成人免费观看av
|
毛片三区
|
91精品国产乱码久久桃
|
久久青草影院
|
色蜜桃av|
婷婷亚洲一区二区三区
|
av在线播放观看
|
成人在线观看免费爱爱
|
国产成人精品免费视频大全办公室
|
国产成人高清在线观看
|
精品国产91久久久久久浪潮蜜月
|
久久精品一级片
|
性欧美日本
|
天天夜夜草
|
日韩毛片一区二区三区
|
亚洲无马在线观看
|
国产午夜精品理论片a级探花
|
免费看黄色一级片
|