如何找到Unix/Linux命令?
时间:2020-01-09 10:45:57 来源:igfitidea点击:
问题描述:如何找到用于特定任务的UNIX/Linux命令?
解决方法:您可以使用man或者apropos命令在Linux/UNIX下进行基于关键字的搜索。
apropos命令
每个Linux/UNIX/BSD手册页都有简短的描述。
apropos命令在描述中搜索关键字的实例。
关键字通常是正则表达式(-r选项),通配符(-w选项)或者匹配完全匹配的关键字(-e选项)。
使用这些选项,可能有必要用引号引起来或者对特殊字符进行转义(),以阻止Shell解释它们。
apropos例子
找出所有与删除/删除相关的管理命令:
$ apropos -s8 -w "*delete*"
输出示例:
addgroup (8cn) - add and delete newsgroups, locally only delgroup (8cn) - add and delete newsgroups, locally only groupdel (8) - delete a group userdel (8) - delete a user account and related files
-s选项仅搜索给定的手册部分。
如果section是一个简单的部分,例如3,则显示的描述列表将包括3、3perl,3x等部分中的页面;等等。
而如果该部分具有扩展名,例如3perl,则列表将仅包括手册部分确切部分中的页面。
部分 | 含义 |
1 | 可执行程序或者Shell命令 |
2 | 系统调用(内核提供的功能) |
3 | 库调用(程序库中的函数) |
4 | 特殊文件(通常在/dev中找到) |
5 | 文件格式和约定,例如/etc/passwd |
6 | 游戏 |
7 | 其他(包括宏包和约定),例如man(7),groff(7) |
8 | 系统管理命令(通常仅用于root用户) |
9 | 内核例程[非标准] |
查找删除文件的命令:
$ apropos -r 'remove file'
输出示例:
rm (1) - remove files or directories
在简短描述和手册页名称中搜索关键字printf作为正则表达式:
$ apropos -r printf
输出:
aa_printf (3) - print text to AA-lib output buffers. asprintf (3) - print to allocated string cucul_printf (3caca) - (unknown subject) dprintf (3) - print to a file descriptor fprintf (3) - formatted output conversion fwprintf (3) - formatted wide-character output conversion gl_printf (3) - write formatted output in graphic mode printf (1) - format and print data printf (3) - formatted output conversion snprintf (3) - formatted output conversion sprintf (3) - formatted output conversion swprintf (3) - formatted wide-character output conversion vasprintf (3) - print to allocated string vdprintf (3) - print to a file descriptor vfprintf (3) - formatted output conversion vfwprintf (3) - formatted wide-character output conversion vprintf (3) - formatted output conversion vsnprintf (3) - formatted output conversion vsprintf (3) - formatted output conversion vswprintf (3) - formatted wide-character output conversion vwprintf (3) - formatted wide-character output conversion wprintf (3) - formatted wide-character output conversion