2011-01-21 94 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应该告诉你什么是在其他部分。