脚本文件名的查询和文件名的查找
---雨竹清风
脚本文件名的查询
我们可以通过按两次tab键就可以知道所有的命令,但是这些命令存在哪里呢?可以使用which命令来查找。
*使用which命令来查找可执行文件
以root身份,使用which命令来查找ifconfig的路径,如下所示:
切换成普通用户来查找ifconfig的路径,首先是切换到普通用户下,然后执行which命令,命令如下所示。
找不到which命令,原因是which命令是根据用户的PATH变量内的目录去查找可执行文件的。which存在于/sbin下,而在普通用户下的/sbin不在cjq的PATH的变量中,所以找不到。
*用which去找which命令。
会有两个,其中有一个是alias是输入which是等于后面那一串命令。
*找出cd命令的完整文件名
因为cd是内置的命令,而which是默认查找PATH变量的目录下查找。
文件名的查找
查找文件时通常使用的是whereis和locate命令,而find命令很少使用,原因是whereis和locate命令是到数据库下查找,速度比较快,而find命令是到硬盘中去查找。
whereis
*用whereis命令来查找ifconfig的文件名
使用的命令是whereis ifconfig
*用命令查找有关“说明文件”passwd的文件名
locate
*找出系统中与passwd的文件名
使用命令locate passwd,结果如下:
。。。。。。
使用locate命令可以用来在忘记文件名时来查找所需的文件名。locate寻找的是到数据库中去查找,以创建的数据库为/var/bin/mlocate下去查找,速度较快。而我们新创建一个文件时,查找却找不到的原因是数据库还未更新,一般是一天更新一次,也可以手动更新,使用的命令是updatedb。updatedb命令是读取/etc/updated.conf这个文件的配置,从而到硬盘中去查找,从而更新数据库。updatedb命令只有root才能执行。