


UNIX常見(jiàn)問(wèn)題解答(一)
這篇文章以下問(wèn)題的解答:
1.1) 誰(shuí)幫助你將做出這個(gè) faq 的?
1.2) 當(dāng)有人提及'rn(1)' 或 'ctime(3)' 的時(shí)候,刮弧里的數(shù)目意謂什么呢?
1.3) 一些奇怪的 unix 指令名字的由來(lái)?
1.4) "comp.unix.questions" 和 "info-unix" mailing list 之間的gateway 是如何運(yùn)作的?
1.5) 請(qǐng)建議一些有用的 Unix, C 相關(guān)書(shū)籍.
1.6) 以前在這 FAQ 中的發(fā)音表到那去了?
1.1) 誰(shuí)幫助你將做出這個(gè) faq 的?
這個(gè)文件是最初的幾個(gè) FAQ 之一, 編纂于 1989 年七月。整個(gè)編輯工作幾乎都是 Steve Hayman 做的。 我只是接管這份文件的維護(hù)。
我們非常感謝 Usenet 讀者提出的問(wèn)題,反應(yīng),更正和提議。
特別感謝 Maarten Litmaath, Guy Harris 和 Jonathan Kamens,他們都貢獻(xiàn)良多。
這個(gè)文件中的第 5 部份(shells)幾乎完全是 Matthew Wicks<wicks@dcdmjw.fnal.gov> 寫的。
這個(gè)文件中的第 6 部份(各種 Unix)幾乎完全是 Pierre (P.) Lewis<lew@bnr.ca> 寫的
我盡可能的把每個(gè)問(wèn)題的作者與最后更新的日期放在問(wèn)題的開(kāi)端。很不幸地,因?yàn)槲易罱砰_(kāi)始這樣做, 許多的資訊已遺失。我也疏于保存為問(wèn)
題補(bǔ)充最新資料者的名單。對(duì)那些有貢獻(xiàn)而沒(méi)有得到應(yīng)有的榮譽(yù)者, 在此致歉。
我將此文件轉(zhuǎn)為 *roff 格式(ms 與 mm 兩種 macro 都有)。AndrewCromarty把它轉(zhuǎn)換成 Texinfo 格式。這些格式化的版本可由 anonymous
ftp 于 ftp.wg.omron.co.jp 的 pub/unix-faq/docs 取得.
1.2) 當(dāng)有人提及'rn(1)' 或 'ctime(3)' 的時(shí)候,刮弧里的數(shù)目意謂什么呢?
看起來(lái)像是 function call, 不過(guò), 不是。 這些數(shù)目字是指 Unix 手冊(cè)中文件所在的章節(jié)。當(dāng)你打 "man 3 ctime" 時(shí), 表示是要查閱在第
3節(jié)中ctime 的內(nèi)容。
傳統(tǒng) Unix 手冊(cè)的分節(jié)法:
1 User-level commands
2 System calls
3 Library functions
4 Devices and device drivers
5 File formats
6 Games
7 Various miscellaneous stuff - macro packages etc.
8 System maintenance and operation commands
一些 Unix 版本使用非數(shù)字的章節(jié)名字。舉例來(lái)說(shuō), Xenix 的指令用"C"而功能用"S"。 一些比較新的 Unix 版本得用 "man -s# title" 而
非"man # title"。每一節(jié)都有一個(gè)簡(jiǎn)介, 以 # 代表節(jié)數(shù), "man # intro" 就可以讀第 # 節(jié)的簡(jiǎn)介。
有時(shí)為了區(qū)別指令和相同名字的常式或系統(tǒng)呼叫數(shù)字是必需的。 舉例來(lái)說(shuō),你的系統(tǒng)可能有"time(1)", 有關(guān) 'time' 這個(gè)測(cè)量所費(fèi)時(shí)間指令
的說(shuō)明,也有 "time(3)", 關(guān)于 'time' 這個(gè)用來(lái)決定目前時(shí)間的副常式的說(shuō)明。你可以用 "man 1 time" 或 "man 3 time" 來(lái)選擇要看哪
一"time" 的說(shuō)明。
或許你系統(tǒng)會(huì)有其它的章節(jié)或在細(xì)分的次章節(jié)(subsection),像 Ultrix 就有 3m, 3n, 3x 與 3yp。
1.3) 一些奇怪的 unix 指令名字的由來(lái)
awk = "Aho Weinberger and Kernighan"
這個(gè)語(yǔ)言以作者 Al Aho, Peter Weinberger 和 Brian Kernighan 的姓來(lái)命名。
grep = "Global Regular Expression Print"
grep 來(lái)自 ed 的列印所有符合某 pattern 指令
g/re/p
"re" 代表 regular expression
fgrep = "Fixed GREP".
fgrep □找固定的字串。"f" 不是代表 "fast" - 事實(shí)上, "fgrep foobar *.c" 通常比 "egrep foobar *.c" 來(lái)得慢(有點(diǎn)意外吧, 不信
的話, 自己試試嘍)。
盡管如此,F(xiàn)grep 仍然有可取之處,在檔案中搜尋字串的時(shí)候,F(xiàn)grep能處理的字串?dāng)?shù)目較 egrep 多。
egrep = "Extended GREP"
egrep 用比 grep 更 fancy 的 regular rexpression。許多人始終只用 egrep,因?yàn)樗玫?algorithm 比 grep 或 fgrep 用的高級(jí),而
且通常是三個(gè)程式中最快的。
cat = "CATenate"
catenate 是一個(gè)艱深難懂的單字,意思是"把它連成一串", 這就是"cat" 這個(gè)指令對(duì)一個(gè)或多個(gè)檔案所做的處理。
請(qǐng)不要跟 C/A/T 混淆了,C/A/T 是指電腦輔助排版系統(tǒng)(Computer Aided Typesetter)。
gecos = "General Electric Comprehensive Operating Supervisor"
不過(guò),當(dāng)通用電器 (GE) 的大型系統(tǒng)部門賣給 Honeywell 的時(shí)候,Honeywell 就把 GECOS 的 E 拿掉了。
目前 Unix 的密碼檔里面仍保有 "pw_gecos" 這個(gè)欄位。這個(gè)名字是從古早的年代沿用過(guò)來(lái)的。
Dennis Ritchie 曾經(jīng)說(shuō)過(guò):
"有時(shí)候我們會(huì)把印表輸出或整批工作丟到 GCOS 機(jī)器。密碼檔里面的 gcos 欄位是用來(lái)隱藏 $IDENT 卡片上的資訊,這樣做不夠優(yōu)雅"。
nroff = "New ROFF"
troff = "Typesetter new ROFF"
這些字都是從"roff"衍生的, roff 是重寫 Multics 上的 runoff 程式得來(lái)的 (runoff 的意思就是"印出文件")。
tee = T
這是管線工人的術(shù)語(yǔ),代表 T 型的管線分叉器。
bss = "Block Started by Symbol" (由符號(hào)啟始的區(qū)塊)
Dennis Ritchie 曾說(shuō)過(guò):
這個(gè)縮寫也許有其他說(shuō)法,但事實(shí)上我們采用這個(gè)縮寫的本意是"Block Started by Symbol"。它是 FAP 上的虛擬指令,F(xiàn)AP(Fortran
Assembly [-er?] Program) 是指 IBM 704-709-7090-7094這種機(jī)型的組譯器。這個(gè)指令可定義自己的標(biāo)號(hào),并且預(yù)留一定數(shù)目的字組空間。
還有另一個(gè)虛擬指令 BES,是 "Block Ended by Symbol",跟 BSS 指令幾乎一樣,不同點(diǎn)在于標(biāo)號(hào)是定義在預(yù)留字組空間尾端的位址 + 1 的
地方。在這些機(jī)器上,F(xiàn)ortran 的陣列是以反方向儲(chǔ)存,而且陣列的索引是從 1 算起。
這種用法是合理的,因?yàn)檫@跟 UNIX 上標(biāo)準(zhǔn)的程式載入器一樣,程式碼當(dāng)中并非真的放入這一整塊預(yù)留空間,而是先用一個(gè)數(shù)目表示,在載入時(shí)
才真的把所需的預(yù)留空間定出來(lái)。
biff = "BIFF"
這個(gè)指令是用來(lái)設(shè)定當(dāng)您有新郵件進(jìn)來(lái)時(shí),是否要通知您。這是柏克萊大學(xué)校園內(nèi)一只狗的名字。
我可以確定這個(gè)名稱的起源,如果您有興趣的話,Biff 是 Heidi Stettner 養(yǎng)的寵物,想當(dāng)年 Heidi (還有我,跟 Bill Joy) 都還是UCB的
研究生時(shí),早期的 BSD 版本還在發(fā)展中。Biff 受到流連于Evans Halls 這些人的喜愛(ài),也因?yàn)樗鼤?huì)對(duì)前來(lái)的郵差吠叫而聞名;因此就
以 biff 當(dāng)作指令的名稱。(這是卡內(nèi)基美濃大學(xué)的 Eric Cooper 證實(shí)的)
rc (像是 ".cshrc" 或 "/etc/rc" 中的 rc 這兩個(gè)字母) = "RunCom"
"rc" 是取自 "runcom", 來(lái)自麻省理工學(xué)院在 1965 年發(fā)展的 CTSS系統(tǒng)。相關(guān)文獻(xiàn)曾記載這一段話: '具有從檔案中取出一系列命令來(lái)執(zhí)
行的功能;這稱為 "run commands" 又稱為 "runcom",而這種檔案又稱為一個(gè) runcom (a runcom)。'
Brian Kernighan 與 Dennis Ritchie 告訴 Vicki Brown 說(shuō): "rc" 也是Plan 9 作業(yè)系統(tǒng) shell 的名字。
Perl = "Practical Extraction and Report Language"
Perl = "Pathologically Eclectic Rubbish Lister"
Perl是 Larry Wall 所發(fā)展的一種相當(dāng)受歡迎的語(yǔ)言, Perl 在處文字,process,與檔案時(shí)非常便利,可以說(shuō)是兼得 shell 與 C 之長(zhǎng)。想
知道更多關(guān)于Perl 的訊息,請(qǐng)看 Usenet newsgroup comp.lang.perl。
Don Libes 的 "Life with Unix" 一書(shū)里有更多這類的珍聞?shì)W事。
1.4) "comp.unix.questions" 和 "info-unix" mailing list 之間的gateway 是如何運(yùn)作的?
"info-unix" 與 "unix-wizards”分別是 comp.unix.questions 和comp.unix.wizards 的 mailing-list 版。Mailing list 與
newsgroup的內(nèi)容應(yīng)該是相同的
要加入或退出任一個(gè) mailing list, 請(qǐng)送 email 給info-unix-quest@brl.mil或 unix-wizards-request@brl.mil。切記要加入或退出
mailing list 時(shí)是送給"*-request@brl.mil" 。也請(qǐng)您耐心等候因?yàn)椴粫?huì)馬上有回應(yīng)。
底下就是 mailing list 的維護(hù)者 Bob Reschly 所提供關(guān)于這些 mailing list的詳細(xì)細(xì)節(jié)。
==== postings to info-UNIX and UNIX-wizards lists ===
我個(gè)人不對(duì)送到 mailing list 的內(nèi)容作管制,任何送到這個(gè) mailing list 的信件都會(huì)貼到相對(duì)應(yīng)的 news group。BRL 只是單純的轉(zhuǎn)送。
在此 mailing list上的 Internet 使用者,要送文章到 newgroup 上時(shí)請(qǐng)送到 info-UNIX 或UNIX-wizards, '-request' 是要的信是要送
給 mailing list 的維護(hù)者看的。
在此 mailing list 上的 Internet 使用者會(huì)收到兩類的訊息,一種是單獨(dú)一篇的討論文章,另一種則是集結(jié)多篇討論精華的文摘。從
Internet 或者BITNET (透過(guò) Bitnet ←→ Internet 轉(zhuǎn)換程式)寄往 BRL 的訊息都會(huì)轉(zhuǎn)發(fā)一份給 mail list 當(dāng)中的每一個(gè)使用者。
從 USENET 發(fā)出來(lái)的文章則以每天匯整一次的方式寄給 mailing list 當(dāng)中的所有成員。BITNET 的網(wǎng)路交通跟 Internet 的網(wǎng)路交通很像。
主要的不同點(diǎn)在于:對(duì)于 mailing list 內(nèi)所有 BITNET 的收件人,我只要維護(hù)一個(gè)電子郵件地址,讓這個(gè)地址所在的收件程式維護(hù)所有收件
人的資訊,并且自動(dòng)轉(zhuǎn)寄所有文章給 mailing list 上的每一個(gè)訂閱者即可。
在 USENET 上的訂閱者只會(huì)讀到各自獨(dú)立的訊息,所有發(fā)自 Internet 的訊息則轉(zhuǎn)送至我們位于 USENET 上的機(jī)器,然后貼至合適的討論區(qū)。
很不幸地,這些透過(guò)轉(zhuǎn)換程式貼出去的文章,發(fā)件人會(huì)變成 news@brl-adm,這是轉(zhuǎn)換軟體目前尚未解決的先天限制。
至于讀者群方面,USENET 是一個(gè)擁有廣大讀者群的地方,我估計(jì)約有數(shù)千部主機(jī)與數(shù)萬(wàn)名使用者參與 USETNET。BRL 所維護(hù)的主要 list 約
有250 個(gè),大約有百分之十是本地的轉(zhuǎn)送 list。我不太清楚 BITNET 方面的轉(zhuǎn)送數(shù)目,不過(guò)如果要讓我猜的話,數(shù)目大約跟主要 list 一樣。平均一個(gè)list 在一個(gè)星期內(nèi)要送出 150K 到 400K 的資料。
1.5) 請(qǐng)建議一些有用的 Unix, C 相關(guān)書(shū)籍。
Mitch Wright (mitch@cirrus.com) 維護(hù)一份 Unix 和 C 相關(guān)書(shū)籍一覽表,里面包含簡(jiǎn)介與短評(píng)。目前在他的表上有 167 本ftp.rahul.net
(192.160.13.1) 的 "pub/mitch/YABL/yabl" 就是這份一覽表。 要加入新的內(nèi)容或提供建議送 email 給 mitch@cirrus.com。
Samuel Ko (kko@sfu.ca) 維護(hù)一份 Unix 相關(guān)書(shū)籍表。這個(gè)列表只包含推薦書(shū),因此比較短。 這份表是分類的列表, 如果你正在尋找特定條
件類型的書(shū), 這份表無(wú)疑是較為合適的。rtfm.mit.edu 的"pub/usenet/news.answers/books/unix" 就是此表。要加入新的內(nèi)容或提供建議
送 email 給 kko@sfu.ca。
如果你不能使用 anonymouse ftp, email 到 "ftpmail@decwrl.dec.com"信的內(nèi)容就寫 "help",然后你就會(huì)收到一份教你如何以 email 取
得anonymous 的信件。
1.6) 以前在這 FAQ 中的發(fā)音表到那去了?
當(dāng) 1989 本文件開(kāi)使時(shí), 它包含了一份 Carl Paukstis<carlp@frigg.isc-br.com> 原作,由 Maarten Litmaath 所維護(hù)的一份包羅萬(wàn)象的
發(fā)音表。后來(lái)它功成身退了,因?yàn)榘l(fā)音與 "Unix questions" 這個(gè)主題不是真的有關(guān)。
若你碰到一些不知該怎么讀的字, 請(qǐng)參考 Eric S. Raymond eric@snark.thyrsus.com 所維護(hù)的 Jargon。
/* 譯注: ftp://ftp.csie.nctu.edu.tw/pub/GNU/jarg320.txt.gz 是普通文字版 Jargon */
若你還是堅(jiān)持要以前那份發(fā)音表, ftp.wg.omron.co.jp (133.210.4.4) 的"pub/unix-faq/docs/Pronunciation-Guide" 就是啦 !
關(guān)鍵字:UNIX
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無(wú)AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解