a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Perl > 正文

Perl學習教程之單行命令詳解

2020-10-31 14:50:48
字體:
來源:轉載
供稿:網友

前言

本文主要給大家介紹了關于Perl單行命令的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

與One-Liner相關的perl參數

  • -a 自動分隔模式,用空格分隔$并保存在@F中,也就是@F=split //, $
  • -F 指定-a的分隔符
  • -l 對輸入的內容進行自動chomp,對輸出的內容自動加換行符
  • -n 相當于while(<>)
  • -e 執行命令,也就是腳本
  • -p 自動循環+輸出,也就是while(<>){命令(腳本); print;}

記住以上幾點參數,幾乎可以開始使用perl來編寫one line命令了

以上為簡介版,下面這張圖可以算是完整版

根據下面的例子來理解下perl one line

1、基本格式:perl -參數 ‘命令' 輸入文件

2、perl -e為必須要寫的參數

3、perl -pe 可用于讀取文件每行,并按照給定的命令進行處理,最后輸出;如將文件1.txt中的aaa替換為AAA

perl -pe 's/aaa/AAA/g' 1.txt

4、perl -l參數幾乎可以跟n搭配代替perl經常用的while(<>){chomp;}語法

5、如果需要處理tab分割的文件的每一行內容,那么perl -alne參數幾乎可以說是必備的,例如while(<>){chomp;@F=split //s+/,$_;print "$F[0]/n"}相當于

perl -alne 'print $F[0]'

6、perl單行命令腳本里的變量都不需要預先聲明,如想打印出每空行,并且每行以行數開頭

perl -ne 'print ++$a." $_" if /./'

7、perl單行命令有時優于sed/grep等shell命令是由于其優秀的正則匹配,通常簡單的匹配可以如:匹配上的行號,模仿grep -c的功能:

perl -lne '$a++ if /regex/; END {print $a+0}'

8、perl單行命令可以使用perl的模塊,如使用sum函數的模塊:

perl -MList::Util=sum -alne 'print sum @F'

9、perl也可以像awk一樣使用END命令,如打印出文件中總單詞個數

perl -alne '$t += @F; END { print $t}'

10、perl也可以使用map{}等函數,如打印出匹配上的單詞的總個數

perl -alne 'map { /regex/ && $t++ } @F; END { print $t }'

11、perl單行命令可以說是將perl的簡潔用到了極致,如打印出匹配上的行:

perl -ne '/regex/ && print'

12、perl單行命令能像perl一樣靈活的使用則正表達式

perl -ne 'print if /^/d+$/'

以上例子均出自于http://www.catonmat.net/blog/perl-one-liners-explained-part-one/

使用perl來處理數據的我們,會一點Perl one line可以有效的減少編寫重復命令的時間,尤其是那些就用1-2次就不會用的腳本,尤其在window系統下不方便使用shell命令的時候。

PS.當然在windows系統下也可以借用git模擬Unix命令環境~~~~

總而言之,蠻適合學習下,多用用

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产片三级91 | 欧美在线视频网站 | 神马久久久久久久 | 国产大胆自拍 | 久久欧美视频 | 色欧美日韩 | 天天久久| 精品国产91亚洲一区二区三区www | 91久久精品日日躁夜夜躁欧美 | 最新版天堂资源中文在线 | 一级欧美 | 精品久久久久久久久久 | 日韩一级电影在线 | 久久精品久久精品 | 国产一区二区三区在线免费观看 | 久久99精品久久久久久琪琪 | 亚洲视频在线观看一区二区三区 | 91视频www | 国产亚洲精品久久久优势 | 国产精品夜夜 | 国产精品丝袜视频 | 欧美 日韩 国产 一区 | 成年人福利 | 国产二区视频 | 超碰av在线| 国产在线拍 | 成人欧美一区二区三区白人 | 免费观看一级特黄欧美大片 | 国外成人在线视频网站 | 羞羞视频网站 | 日韩一二三区 | 中文在线a在线 | 日韩精品一区二区三区中文在线 | 久久精品高清视频 | 在线观看欧美一区 | 成人男女激情免费视频 | 热99这里只有精品 | 欧美一级做a爰片免费视频 在线不卡日韩 | 亚洲成人av在线 | 搜一级毛片 | 欧美黄色a视频 |