Unix編程FAQ v0.10
無意中找到一個Unix編程FAQ,更好運的是這已經被翻譯成中文版了!雖然比較舊了,但還是很有用。
由linuxforum.net提供。感謝他們所做的貢獻。
下面貼出章節目錄。原文還是在linuxforum.net上,這樣應該不算是盜鏈吧!
-
Table of Contents
-
關於
-
-
原英文版
-
原始中文版
-
本中文HTML文檔
-
1. 進程式控制制
-
-
1.1. 建立新進程:fork函數
-
-
1.1.1. fork函數幹什嗎?
-
1.1.2. fork函數與vfork函數的區別在哪裡?
-
1.1.3. 為何在一個fork的子進程分支中使用_exit函數而不使用exit函數?
-
1.2. 環境變數
-
-
1.2.1. 如何從程式中獲得/設定環境變數?
-
1.2.2. 我怎樣讀取整個環境變數表?
-
1.3. 我怎樣睡眠小於一秒?
-
1.4. 我怎樣得到一個更細分時間單位的alarm函數版本?
-
1.5. 父子進程如何通訊?
-
1.6. 我怎樣去除僵死進程?
-
-
1.6.1. 何為僵死進程?
-
1.6.2. 我怎樣避免它們的出現?
-
1.7. 我怎樣使我的程式作為精靈運行?
-
1.8. 我怎樣象ps程式一樣審視系統的進程?
-
1.9. 給定一個進程號,我怎樣知道它是個正在啟動並執行程式?
-
1.10. system函數,pclose函數,waitpid函數的傳回值是什嗎?
-
1.11. 我怎樣找出一個進程的儲存空間使用方式?
-
1.12. 為什麼進程的大小不縮減?
-
1.13. 我怎樣改變我程式的名字(即“ps”看到的名字)?
-
1.14. 我怎樣找到進程的相應可執行檔?
-
-
1.14.1. 那麼,我把設定檔放在哪裡裡呢?
-
1.15. 為何父進程死時,我的進程未得到SIGHUP訊號?
-
1.16. 我怎樣殺死一個進程的所有派生進程?
-
2. 一般檔案操作(包括管道和通訊端)
-
-
2.1. 如何管理多個串連?
-
-
2.1.1. 我如何使用select()函數?
-
2.1.2. 我如何使用poll()?
-
2.1.3. 我是否可以同時使用SysV IPC和select()/poll()?
-
2.2. 我如何才能知道和對方的串連被終止?
-
2.3. 什麼是讀取目錄的最好方法?
-
2.4. 我如何才能知道一個檔案被另外進程開啟?
-
2.5. 我如何鎖住一個檔案?
-
2.6. 我如何能發現一個檔案已由另外一個進程更新?
-
2.7. 請問du是怎樣工作的?
-
2.8. 我如何得到一個檔案的長度?
-
2.9. 我如何像shell裡一樣擴充在檔案名稱裡的’~'?
-
2.10. 有名管道(FIFO)能做什嗎?
-
-
2.10.1. 什麼是有名管道?
-
2.10.2. 我如何建立一個有名管道?
-
2.10.3. 我如何使用一個有名管道?
-
2.10.4. 能否在NFS上使用有名管道?
-
2.10.5. 能否讓多個進程同時向有名管道內寫入資料?
-
2.10.6. 有名管道的應用
-
3. 終端輸入/輸出
-
-
3.1. 我怎樣使我的程式不回射輸入?
-
3.2. 我怎樣從終端讀取單個字元?
-
3.3. 我怎樣檢查是否一個鍵被摁下?
-
3.4. 我怎樣將游標在螢幕裡移動?
-
3.5. pttys是什嗎?
-
3.6. 怎樣控制一個串列口和數據機?
-
-
3.6.1. 串列裝置和類型
-
3.6.2. 設定termios的標誌位
-
4. 系統資訊
-
-
4.1. 怎樣知道我的系統有多少儲存空間容量?
-
4.2. 我怎樣檢查一個使用者的口令?
-
-
4.2.1. 我怎樣得到一個使用者的口令?
-
4.2.2. 我怎樣通過使用者號得到陰影口令檔案中的口令?
-
4.2.3. 我怎樣核對一個使用者的口令?
-
5. 編程雜技
-
-
5.1. 我怎樣使用通配字元比較字串?
-
-
5.1.1. 我怎樣使用檔案名稱通配模式比較字串?
-
5.1.2. 我怎樣使用Regex比較字串?
-
5.2. 什麼是在程式中寄送電子郵件的最好方法?
-
-
5.2.1. 簡單方法:/bin/mail
-
5.2.2. 直接啟動郵件傳輸代理程式:/usr/bin/sendmail
-
6. 工具的使用
-
-
6.1. 我怎樣調試fork函數產生的子進程?
-
6.2. 怎樣通過其他庫檔案建立新的庫檔案?
-
6.3. 怎樣建立動態串連庫(shared library)/dlls?
-
6.4. 我能更改一個動態串連庫裡的目標嗎?
-
6.5. 我能在一個運行著的程式中產生堆棧映象嗎?
-
7. 範常式序
-
-
捕獲 SIGCHLD 訊號
-
讀取進程表 - SUNOS 4 版
-
讀取進程表 - SYSV 版
-
讀取進程表 - AIX 4.2 版
-
使用popen函數和ps命令讀取進程表
-
精靈工具函數
-
數據機控制範常式序
-
事務控制範常式序