Unix編程FAQ

來源:互聯網
上載者:User
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命令讀取進程表
精靈工具函數
數據機控制範常式序
事務控制範常式序  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.