作業系統 | all |
---|---|
程式語言 | perl 5.8.1 or higher |
基於資訊共享的大義,我常把自己一些摸索的心得寫在 無名小站的個人版(p_fcamel)。 用BBS記事是很方便,聊天也很方便,但要整埋文件就很彆手了, 再加上用網路搜尋引擎不容易找到BBS的文章,這使資訊共享有很大的限制。
其實只是用Perl寫個轉換程式,保留BBS的格式和顏色,轉換成HTML, 這樣看起來比較順眼。再配合自己的需求,加些處理功能,畢竟是在Web上, 處理起來比較順手。
總之,尚在開發中,目前的功能算是夠用吧
bbs2web從stdin讀入,預設從stdout輸出,可以加上參數使它有發揮一些附加功能。 bbs2web的輸入檔案是一封"BBS的轉信",比方從無名小站按F轉寄版上一篇文章回來, 當作bbs2web的輸入,它會略掉不必要的資訊,輸出轉換後的html。
你可以用procmail這類的後端mail程式,自動把轉錄自BBS版上的文章交由bbs2web處理, 這是我的procmailrc設定(關於procmail進一步說明,google procmail)。
:0: * ^From.*fcamel\.bbs@wretch.* | ~/bbs2web/bbs2web.pl -p -i
基於KISS(Keep It Simple and Stupid)原則,我只有使用單純的文字格式做建檔管理,
這樣做最大的好處在於,你不用安裝和設定MySQL之類的database
(往往在做A時需要B,處理B時又要先完成C,這實在很討人厭)。
bbs2web會把所有東西放在@PREFIX[]下,path必須是絕對路徑
,
每篇文章標題"[]"裡的字表示分類(若沒有[],分類為etc),若該分類不存在,
會先建立目錄,並在目錄底下產生兩個檔案,.db和.sn。
使用-i時需要的設定,設定寫在source code的最上面,設定值以空白字元分隔, 例如:
my @sender = qw( fcamel@fc.mjwu.net fcamel.bbs@wretch.twbbs.org ); my @receiver = qw( someone@somewhere.org chlo@csie.nctu.edu.tw ); # absolute path my @prefix = qw( /home/fcamel/public_html/tmp /home/fcamel/public_html/web/docs/doc/data );
someone@somewhere.org的prefix使用/home/fcamel/public_html/tmp, 而chlo@csie.nctu.edu.tw使用/home/fcamel/public_html/web/docs/doc/data。
用來管理database的tool,執行此命令時,需要在doc root path, 以上例來說,就是/home/fcamel/public_html/tmp或/home/fcamel/public_html/web/docs/doc/data。 目前支援更換位置和刪除檔案。
Back