自己寫類似pkg_version -vL=的小程式 -- pver - BBS

Cara avatar
By Cara
at 2008-12-14T00:57

Table of Contents

功能描述:
類似pkg_version -vL=
(其實應該說類似pkg_version -IvL=
之前忘記INDEX和實際ports裡面的情形可能不同@@)
不過也就只有列出版本號不同者
個人測試是比pkg_version -IvL=快三倍以上
(不考慮建立db的時間的話)

範例輸出:
ImageMagick-nox11 6.4.5.5 6.4.7.5
phpMyAdmin 3.1.0 3.1.1

下載網址:
http://www.csie.nctu.edu.tw/~weiyu/software/pver-0.07.tar.gz
僅原始檔,需自行編譯

dependency:
* portupgrade(optional)
* db-3+ (應該吧 測試環境是db-4.3)

編譯:
主要有個INDEX_DB_FILE可以設定
預設是/usr/ports/INDEX-{uname取得的主要版本}.db
也就是portupgrade裡portsdb所建立的檔案
方式一(使用portupgrade的portsdb建立的檔案):
* make

方式二(不想依賴portupgrade的話):
1. make INDEX_DB_FILE='檔案要放的位置'

其中檔案要放的位置 建議寫成絕對路徑(可以在不同目錄使用)
使用前請先執行
2. pver_dbgen
在指定位置產生db檔
(ports的index更新時須重新執行)

程式大致上的動作:
取出/var/db/pkg下的目錄名稱,和ports的INDEX所建立的db做比對
不一樣的話再去/var/db/pkg/{PKGNAME}/+CONTENTS找
@comment ORIGIN:那行取來源位置
如果該位置可以在ports的db找到的話,則取出db裡面的版本
(因為此時ports的db記錄的版本,和/var/db/pkg下的資訊不一樣
所以版本理論上應該不一樣)
顯示套件名稱和新舊版本

其他:
0.07 只有把顯示上的\t\t改成\t
0.06 使用scandir來達成排序效果
在nfs建立db很慢的話,可能需要指定建立在非nfs目錄


--
和FreeBSD有關,應該可以放在這個版吧XD
(雖然是宣傳自己的程式:p)

--
Tags: BBS

All Comments

可否讓系統上的某些帳號只能FTP,不能使 …

Dinah avatar
By Dinah
at 2008-12-11T19:22
※ 引述《koach342 (koach)》之銘言: : 目前主機上的系統帳號, : 均可使用主機上的mail功能(且含WebMail)和 FTP(Proftpd 採系統帳號認證) : 不曉得有沒有辦法讓某些帳號只能使用FTP(一樣吃系統認證),但不能使用Mail功能呢? 有辦法用 pam 嗎? - ...

可否讓系統上的某些帳號只能FTP,不能使 …

Dorothy avatar
By Dorothy
at 2008-12-11T18:14
※ 引述《higoodman (我是正好人)》之銘言: : ※ 引述《tonie (tonie)》之銘言: : : 有更好的選擇.. 用 vsftp 就可以開虛擬帳號 : : 也有 SSL 可以用.. : : google: vsftpd virtual user : 他要吃系統帳號,vsftpd virtu ...

可否讓系統上的某些帳號只能FTP,不能使 …

Audriana avatar
By Audriana
at 2008-12-11T18:03
※ 引述《tonie (tonie)》之銘言: : ※ 引述《hoder (超級野菜人)》之銘言: : : 想到一個蠢方法 但我沒用過 : : 如果用過濾信件把該使用者列為黑名單 : : 不知道可不可以?? : 有更好的選擇.. 用 vsftp 就可以開虛擬帳號 : 也有 SSL 可以用.. : google ...

可否讓系統上的某些帳號只能FTP,不能使 …

Una avatar
By Una
at 2008-12-11T16:24
※ 引述《hoder (超級野菜人)》之銘言: : ※ 引述《koach342 (koach)》之銘言: : : aliases是可以把這些信直接導到null去 : : 可是這樣有辦法避免使用者去用Openwebmail寄信嗎?? : : 如果我把這類的使用者設成某種群組,不曉得有沒有辦法可以用設群組權限的方 ...

可否讓系統上的某些帳號只能FTP,不能使 …

Tom avatar
By Tom
at 2008-12-08T13:51
※ 引述《koach342 (koach)》之銘言: : aliases是可以把這些信直接導到null去 : 可是這樣有辦法避免使用者去用Openwebmail寄信嗎?? : 如果我把這類的使用者設成某種群組,不曉得有沒有辦法可以用設群組權限的方法達到 想到一個蠢方法 但我沒用過 如果用過濾信件把該使用者列 ...