【Linux】一步一步学Linux——perl命令(264)
生活随笔
收集整理的這篇文章主要介紹了
【Linux】一步一步学Linux——perl命令(264)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
00. 目錄
文章目錄
- 00. 目錄
- 01. 命令概述
- 02. 命令格式
- 03. 常用選項
- 04. 參考示例
- 05. 附錄
01. 命令概述
perl命令是perl語言解釋器,負(fù)責(zé)解釋執(zhí)行perl語言程序。
02. 命令格式
用法:perl [選項] [參數(shù)]03. 常用選項
-o 以八進(jìn)制數(shù)形式指定輸入記錄的分隔符(也保存在perl中的特殊變量$/中) -a 當(dāng)和-n或者-p一起使用時啟動自動拆分模式.這種模式可以拆分輸入的行,并把它們放置在名為@F的專門數(shù)組中 -c 使perl檢查腳本的語法,然后退出 -C 使perl能夠在目標(biāo)系統(tǒng)中使用原始的寬字符API. -d 在perl調(diào)試程序下運行腳本 -e 使用命令行, -F 如果使用了-a,該參數(shù)可以用來指定所拆分的模式 -h 打印出所有選項的匯總 -i 指出被<>結(jié)構(gòu)處理的文本 -I 使perl為模塊搜索目錄 -l 添加行結(jié)束處理,當(dāng)和-n與-p開關(guān)一起使用,這個開關(guān)能自動把$/從輸入數(shù)據(jù)中刪除,并把$\(輸出記錄分隔符)設(shè)置為octnum,這樣打印語句就可以使用該分隔符了. -m[-]module 在執(zhí)行腳本前,把指定模塊包含在腳本中 -n 讓perl在腳本中試用while(<>)循環(huán) -p 讓perl把下面循環(huán)添加到腳本中: -P perl編譯之前,通過C預(yù)設(shè)處理程序來運行自己的腳本 -s 在命令行中允許要進(jìn)行開關(guān)解析 -S 讓perl試用PATH環(huán)境變量來搜索腳本 -T 強(qiáng)制打開錯誤檢查 -u 在編譯了腳本后,導(dǎo)致perl清楚內(nèi)核 -U 允許perl進(jìn)行不安全的操作,如刪除目錄等 -v 打印出perl的版本及包的級別 -V:name 打印出指定的配置變量的匯總 -w 打印出警告信息 -W 無論no warnings或$^W的狀態(tài)是什么,都啟動警告信息 -x directory 通知perl腳本嵌入到消息中,文本不會被處理,知道第一行代碼以#!開頭并包含了字符"perl" -X 無論use warnings或$^W的狀態(tài)是什么,都禁止警告信息 – 可選, 表示使用的這些開關(guān)的結(jié)束位置04. 參考示例
4.1 解析Perl程序
[deng@localhost tmp]$ perl test.sh hello world [deng@localhost tmp]$4.2 其它用法
# perl -p -i.bak -e 's/\bfoo\b/bar/g' *.c #將所有C程序中的foo替換成bar,舊文件備份成.bak# perl -i.bak -pe 's/(\d+)/ 1 + $1 /ge' file1 file2 … #將每個文件中出現(xiàn)的數(shù)值都加一# perl -pie 's/\r\n/\n/g' file #將換行符\r\n替換成\n# perl -pie 's/\n/\r\n/g' file #將換行符\n替換成\r\n# perl -lane 'print "@F[0..4] $F[6]"' file #顯示字段0-4和字段6,字段的分隔符是空格# perl -F: -lane 'print "@F[0..4]\n"' /etc/passwd #字段分隔符不是空格而是冒號# perl -ne 'print if /^START$/ .. /^END$/' file #顯示START和END之間的部分# perl -ne 'print unless /^START$/ .. /^END$/' file #不顯示START和END之間的部分# perl -pe 'exit if $. > 50′ file #顯示開頭50行# perl -ne 'print unless 1 .. 10′ file #不顯示開頭10行# perl -ne 'print if 15 .. 17′ file #顯示15行到17行# perl -lne 'print substr($_, 0, 80) = ""' file #每行取前80個字符# perl -lne 'print substr($_, 10) = ""' file #每行丟棄前10個字符# perl -ne 'print if /comment/' duptext #查找comment字符串# perl -ne 'print unless /comment/' duptext #查找不含comment字符串的行# perl -ne 'print if /comment/ || /apple/' duptext #查找包含comment或apple的行# perl -lane 'print $F[4] + $F[-2]' #計算字段4和倒數(shù)第二字段之和# perl -e 'print sort <>' file #文件按行排序# perl -00 -e 'print sort <>' file #文件按段落排序# perl -0777 -e 'print sort <>' file1 file2 #多個文件按文件內(nèi)容排序,并返回合并后的文件# perl -e 'print reverse <>' file1 #文件按行反轉(zhuǎn)# perl -ne 'printf "%x\n",$_' #10進(jìn)制轉(zhuǎn)16進(jìn)制# perl -ne 'printf "%o\n",$_' #10進(jìn)制轉(zhuǎn)8進(jìn)制# perl -ne 'print hex($_)."\n"' #16進(jìn)制轉(zhuǎn)10進(jìn)制# perl -ne 'print oct($_)."\n"' #8進(jìn)制轉(zhuǎn)10進(jìn)制# perl -ne 'print eval($_)."\n"' #簡易計算器05. 附錄
參考:【Linux】一步一步學(xué)Linux系列教程匯總
總結(jié)
以上是生活随笔為你收集整理的【Linux】一步一步学Linux——perl命令(264)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为何历史上的“太宗”皇帝都是非正常继位的
- 下一篇: 【Linux】一步一步学Linux——e