Linux命令查找和运行命令

时间:2020-01-09 10:41:20  来源:igfitidea点击:

问题描述:如何在Linux下查找并运行命令?

解决方法:Linux附带许多命令。
但是不要担心它会提供找到它们的命令。
尝试按照以下适当查找的命令查找ls -l

找到命令的二进制文件,源文件和手册页文件

whereis查找指定文件的源/二进制和手册部分。
首先,除去提供的名称中的前导路径名组件和形式为.ext的任何(单个)尾随扩展名,例如.c。

s的前缀。
使用源代码控制所产生的结果也将得到处理。
然后,whereis尝试在标准Linux场所列表中找到所需的程序。
例如找出ls命令其中?

$ whereis ls

输出:

ls: /bin/ls /usr/share/man/man1/ls.1.gz

显示有关命令的简短描述

每个手册页中都有简短说明。

whatis搜索手册页名称并显示匹配的任何名称的手册页描述。

$ whatis ls

输出:

ls (1)               - list directory contents

找到一个命令,其中哪个命令

如果在严格符合POSIX的shell中将其参数作为命令给出,则哪个命令返回将在当前环境中执行的文件的路径名。
它通过在PATH中搜索与参数名称匹配的可执行文件来实现。

$ which ls
$ which -a date

使用apropos命令在手册页名称和说明中搜索命令

每个手册页中都有简短说明。

apropos在描述中搜索关键字的实例。
这对于根据任务找出命令很有用。
例如,删除用户的display命令可以使用

$ apropos 'delete a user'

输出:

userdel (8)          - Delete a user account and related files

其他例子

$ apropos 'delete'
$ apropos 'icmp'

使用locate命令列出数据库中的文件

用于查找文件的位置。
如果忘记了名为httpd的文件的位置,请按如下所示使用定位:

$ locate httpd.conf

输出:

/etc/apache2/httpd.conf
/etc/lighttpd/lighttpd.conf
/etc/lighttpd/lighttpd.conf.BAK
/home/Hyman/etc/apache2/httpd.conf
/home/Hyman/etc/lighttpd/lighttpd.conf
/home/Hyman/etc/lighttpd/lighttpd.conf.BAK
/usr/share/doc/lighttpd/examples/lighttpd.conf.gz
/var/lib/dpkg/info/lighttpd.conffiles