前篇提到了portupgrade的相關資訊,這次將介紹他的眾多參數。
參數
pkgname_glob 定義一個pkgname,可以包含萬用符號。
詳情請參考 pkg_glob(1)。
-h (--help)
顯示求助選單。
-a (--all)
表示所有已經安裝的軟體。 相當於pkgname_glob中的 '*' 。
-A CMD (--afterinstall CMD)
在每一個安裝完成後,以root身分執行某一命令。
-b (--backup-packages)
保留舊有版本的備份。
這些資料會暫時存放在PKG_TMPDIR 及 TMPDIR所定義的位置。
-B CMD (--beforebuild CMD)
與-A CMD 相反,在安裝每一個程式前,先執行該命令。若該命令執行失敗,則安裝會停止。
-c (--clean)
在每一次安裝前,先執行make clean。(預設值)
-C (--cleanup)
在每一次安裝後執行make clean。(預設值)
-D (--distclean)
在每次fetch或是build之前執行 make distclean。
-f (--force)
強制執行,即使是降級或是同一版本也強制安裝。
-F (--fetch-only)
只取得檔案或是packages但不做升級動作。
這個參數對於一次取得多數檔案很有用。
-g (--go-on)
繼續執行動作,即使某些相關的packages升級失敗。
預設的狀態中,若某package或是port升級失敗,其相關連性會被skipped。
-i (--interactive)
打開互動模式,portupgrade在進行重要步驟前會徵得您的同意‧
-l FILE (--log-results FILE)
將更新升級結果以FILE為檔名儲存‧
-L PREFIX (--log-prefix PREFIX)
將每一個port的建立、安裝記錄存為一個檔案,
而PREFIX則是存放的位置‧
-m (--make-args)
在每次make前加上額外的參數(arguments)
-M (--make-env)
在每次make後加上額外的參數(arguments)‧
-n (--noexecute)
不實際執行安裝或升級動作‧
只是顯示會有何改變‧
-N (--new)
當指定的package是尚未安裝的情況下,安裝該程式‧
且其所需求的關連程式也會一併被安裝升級‧
-o ORIGIN (--origin ORIGIN)
定義某port再某package之後升級‧
-O (--omit-check)
忽略依存性的檢查‧
預設的狀況下,會自動檢查程式間的依存性,
當然地,這個動作會花去額外的時間‧
但,若您先前已經執行過pkgdb -F 命令,
您可以採用此參數忽略之‧
-p (--package)
為該安裝/升級的port,建立package‧
-P (--use-packages)
再採用port方式升級前,先採用packages的方式‧
-PP (--use-packages-only)
不管任何情況,只採用packages方式升級‧
-q (--no-config)
使portupgrade不去讀取設定檔$PREFIX/etc/pkgtools.conf‧
-r (--recursive)
依據指定的程式(packages)來升級與其相依存的程式‧
-R (--upward-recursive)
依據指定的程式(packages)來升級其所依存的程式‧
-s (--sudo)
在必要的情況下,以sudo狀態執行命令‧
-S CMD (--sudo-command CMD)
加上sudo的命令
-u (--uninstall-shlibs)
不保留舊有的共享函式庫‧
在預設的情況下是保留以策安全‧
-v (--verbose)
開啟 verbose 輸出‧
-w (--noclean)
在每一次編譯前,不要執行make clean‧
-W (--nocleanup)
在每一次的編譯後不要執行make clean‧
-x GLOB (--exclude GLOB)
將符合樣式的packages排除在昇級更新之外‧
ex:昇級所有與XFree86相依存的程式,除了XFree86之外‧
portupgrade -rx XFree86 XFree86
-y (--yes)
任何回答都回應yes‧
To be continued…