2011-01-21 116 views
4

我有一個任務,我需要在UNIX中使用一些系統調用,比如mktime()和fnmatch()來完成一些操作。我們僅給出手冊頁的名稱以查找功能。UNIX系統調用列表?

現在,這對於作業的目的很好。但是在將來當我進行UNIX編程時,我可能不知道確切的名字(我從來不會知道fnmatch存在,而不知道它的名字)。

所以問題是:如何獲得所有UNIX系統功能的完整列表?我真的不在乎它是否被分類或排序(儘管它會很好),但我希望列表中包含描述以便搜索。這樣當我需要一個功能時,我可以做一些搜索來找到潛在的候選人,然後我可以讓他們找到確切的用法。

+5

如果您認真對待這個問題,請購買`Unix編程環境下的高級編程,第二版... ...這就是我關於低級網絡和IPC編程的亮點。關於這本書我不能說得太高,這是迄今爲止,我讀過的最好的技術書籍(關於任何主題)。 – gahooa 2011-01-21 16:07:06

+0

請注意,mktime和fnmatch不是系統調用。它們是庫函數。 Unix術語對這兩種調用有所不同。它們看起來與C程序員相似,但是它們在系統處理方式以及手冊的哪一部分中有不同之處。 – 2011-01-22 09:39:16

+0

謝謝托馬斯,我的意思是暗示(我的目標是系統調用和庫函數)。 – 2011-01-24 02:29:21

回答

5

還有被稱爲「中肯」一個有用的工具

$ whatis apropos 
apropos (1)   - search the manual page names and descriptions 


$ apropos filename 
... 
fnmatch (3)   - match filename or pathname 
... 
4

系統調用記錄在man文檔的第2部分中。根據您的Unix版本,您應該能夠在man數據目錄中找到這些頁面。

在Linux上,此目錄是/usr/share/man/man2;你的Unix版本可能會有所不同。另外man man應該告訴你什麼是在其他部分。