| |||||||
adm | Find | login register |
script 語言的一個很好用的地方是「一行文」,通常是用於字串處理。sed, awk, perl , python, ruby 都有一行文,其中威力最大的應該就是 perl,但有時候 awk 也很好用。以下整理一些方便好用的一行文「句型」,請大家接龍。 全文大寫轉小寫: perl -pi -e 'tr/A-Z/a-z/' your.file 取得所 match 的 pattern 的次一行的前兩個欄位內容: awk '/pattern/ {getline; print $1, $2}' your.file 將 Un*x 系統中的使用者 login name 依序列出: awk -F: '{print $1|"sort"}' /etc/passwd 列出某檔案的總行數: awk '{n++} END{print n}' your.file 請接龍……
ps. 補充: Perl 的一行文:Awk 的一行文:
Ruby 的一行文: Python 的一行文: 不過,一行文的 script,我個人會比較建議 awk/perl。edited: 3
| |||||||||||
有在用 Vim 的都知道 Vim script 也是滿強大的,但是要用在一行文也可以嗎? → 勉強可以啦! vim --noplugin -esn -c %s/ABC/abc/g -c wq! your.file
將 your.file 全文的「ABC」替換成「abc」。不過,我比較懷疑有人會常常用 vim 的一行文 script。:p
ps. vim script 一行文的好處是,locale 會幫你自動判斷並處理好。例如 Big5 環境的「許功蓋」問題,在 vim 會自動處理好。 edited: 1
|
| |||||||
adm | Find | login register |