一語中的


請參考 perlrun(1)

印出系統中每位使用者自己提供的公開資訊

perl -F: -nae 'printf "%-8s | $F[4]\n", $F[0]' /etc/passwd

想比對的字串, 在一列上出現多次...

perl -ne 'print join("\n",@x),"\n" if (@x=m#href="(.*?)"#g)' 檔名

一次設定許多帳號的密碼

perl -ne 'chomp; print "$_:", join("",reverse split //), "\n"' names | chpasswd

Debian 套件管理: 誰佔了多少空間?

perl -000 -ne 'printf "%6d $1\n",$2 if /^Package:\s*(.*?)\n.*?^Status:[^\n]*\sinstalled\n.*?^Installed-Size:\s*(\d+)/ms' /var/lib/dpkg/status | sort -n > by-size.txt

status 的內容長得像 這樣

其實有指令可以直接查: dpkg-query -W -f '${Installed-Size;6} ${Package}\n' 詳見 dpkg-query 手冊

「課表 ==> 課表」 HTML entity 轉換

有時候某些軟體產生的 html 檔案, 裡面的中文用 html entity 表示, 例如 「課表」 這兩個字變成 「課表」。 如何將它轉換成普通文字編輯器 (例如 vim 或 nano) 可以編輯的檔案呢? 請把上面兩個 html entity 剪貼到一個文字檔, 叫做 sched.html 好了。 perl -pe 's/\&#(\d+);/chr($1)/eg' sched.html | u8tob5 > sched-big5.html 轉完之後記得進去把編碼 (charset 欄位) 從 utf-8 改成 big5。

類似文章:

  1. Unix Review > Perl Is a Gem: One-Liners and Programs