我電腦裡有什麼好玩的東東?


初試

系統裡面安裝了那些套件呢? 尤其是... 有沒有 game 呢?

若您使用 rpm 系列 (RedHat, Fedora, Mandriva, Suse, ...) 的系統:

        rpm -qa --qf '%-20{NAME}: %{SUMMARY}\n'
        rpm -qa --qf '%-20{NAME}: %{SUMMARY}\n' | less
        rpm -qa --qf '%-20{NAME}: %{SUMMARY}\n' | grep -i game
        rpm -qa --qf '%-20{NAME}: %{SUMMARY}\n' | grep -i game | less
    

若您使用 deb 系列 (Ubuntu, Debian, Knoppix, ...) 的系統:

        dpkg-query -W -f '${Package;-20}: ${Description}\n'
        dpkg-query -W -f '${Package;-20}: ${Description}\n' | less
        dpkg-query -W -f '${Package;-20}: ${Description}\n' | grep -i game
        dpkg-query -W -f '${Package;-20}: ${Description}\n' | grep -i game | less
    

印出來的資料中, 每個冒號前面的那串就是一個 套件 (package) 名稱。 關於 less 的操作, 請見 這裡

偷懶

如果對上述指令的細節有興趣, 可以查手冊: man rpmman dpkg-query; 不過一般人更有興趣的應該是如何簡化這些囉嗦的指令。

首先, 用剪貼的比較快: 滑鼠圈起就是複製 (不需要另外按任何鍵); 滑鼠中間鍵就是貼上。

其次, 可以把印出來的結果存檔, 例如存成 packages.txt 好了: rpm -qa --qf '%-20{NAME}: %{SUMMARY}\n' > packages.txtdpkg-query -W -f '${Package;-20}: ${DESCRIPTION}\n' > packages.txt 這個 > 符號叫做 輸出重新導向 output redirection。 以後要找 game 相關套件, 可以下 grep -i game < packages.txt 這個 < 符號叫做 輸入重新導向 input redirection

其實, 最近下過的指令系統都記得, 可以用上箭頭叫出過去的指令, 或用 history 指令印出最近一段時間所下過的所有指令。 如果太多, 可以一頁一頁看 history | less 如果眼花, 可以過濾一下, 例如記得命令叫做什麼 query 的, 但不記得完整的指令, 可以這樣: history | grep -i query

最後, 可以用 function 將很長的命令簡化, 例如: function query() { rpm -qa --qf '%-20{NAME}: %{SUMMARY}\n' | grep -i $1; }function query() { dpkg-query -W -f '${Package;-20}: ${Description}\n' | grep -i $1; } 從此以後可以這樣下: query game 又例如要找可以 view image 的軟體, 可以這樣下: query image | grep -i view 總之 pipe 就是接續處理; grep 就是過濾。

但是這指令的效果僅及於目前的 shell; 若將文字視窗關掉再打開, 就失效了。 (試試看!) 建議把上述設定放入 ~/.bashrc 檔案的最後面, 如此每次開一個新的文字視窗都會生效。

deb 系列補充說明

dpkg-query 所印出來的 description 太長, 不方便看。 如果不介意只留下每個套件名稱那列, 可以指明 "不想留下以空白開頭的列": query image | grep -v '^ ' | grep -i view 其中 -v 表示 "相反" (符合後敘條件的就不印) 而先前的 -i 表示忽略大小寫。 詳見手冊。 這些東西叫做 命列列選項 command line options

其實更好用的另一個指令是 apt-cache search game 會列出不只你電腦上的 games, 還有全世界常見的 games。


命令列讀本

  1. 目錄
  2. 前言
  3. 瀏覽
  4. 套件
  5. 圖片整形
  6. 老鼠迷宮
  7. 迷宮積木
  8. 誰常上機?
  9. 網頁做簡報
  10. tidy 網頁
  11. 編碼
  12. 客製
  13. Regexp
  14. 目錄比較
  15. 聯集差集

附錄

  1. GUI 求生
  2. 基本指令
  3. 阿貴管理