重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在linux中,我们经常需要查找某些文件,以及文件所在目录等。那么我们需要用到一些基本的文件查找类命令。
10年积累的网站建设、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有江南免费网站建设让你可以放心的选择与我们合作。文件查找命令主要有以下几个:
·which 查看命令或可执行文件的完整路径
·whereis 显示二进制文件路径、使用手册文件路径、源码文件路径
·locate 配合数据库查看文件路径
·find 搜索硬盘查询特定文件
·which
which命令的作用,在指定的PATH路径中,搜索某个系统命令的位置,并且返回第一搜索结果。可以查看某个系统命令是否存在,且命令所在的源文件位置。
·命令格式:
which [options] [--] programname [...]
·选项参数:
-a:将所有PATH目录中可以找到的命令均列出,而不止第一被找到的命令名称
--skip-alias:忽略别名
例1:分别用root和普通用户搜索useradd命令的完整路径
root用户可以找到ifconfig的完整路径
我们发现普通用户提示找不到useradd命令。
因为which命令是根据用户所设定的PATH变量内的目录去搜索命令的。
所以,不同的PATH设定内容找到的命令当然不一样!
例2:用which查找which本身会发生什么?
有两个which,其中一个alias which是命令别名,等于后面的那一串命令+参数
我们可以通过追加选项--skip-alias来忽略别名,如下图所示
例3:查找cd命令的完整路径
找不到cd命令的完整路径,证明cd命令所在的目录,PATH中并没有定义
·whereis
whereis命令可显示二进制程序文件路径、使用手册文件路径、源码文件路径
·命令格式:
whereis [-bmsu] [-BMS directory... -f] filename...
·选项参数:
-b:仅搜索二进制程序文件的路径(常用)
例如:
注意,普通用户通过which命令找不到adduser,而whereis却可以找到!
这是因为系统本身存在adduser这个文件,which命令找不到是因为PATH命令没有加入指定目录
所以,当你找不到某些命令式,不妨向用文件搜索命令找找看。
-m:仅搜索使用手册文件路径(常用)
例如:
-s:仅搜索源代码路径
-u:搜索默认路径下除以上3种路径以外的其他文件路径
-B:指定搜索可执行文件的路径。
-M:指定搜索帮助文件的路径。
-S:指定搜索源代码文件的路径。
·locate
locate命令可以在搜索数据库时快速找到指定的文件。数据库由updatedb命令来更新,updatedb是由cron daemon周期性建立的。locate命令在搜索数据库时比由整个硬盘来搜索文件来的快,但是有一个缺点,locate命令无法搜索到最近或更名的文件,需要updatedb命令来更新数据库。默认情况下,updatedb每天运行一次,可以通过修改 /etc/crontab 文件来更改更新时间的设定值。
·命令格式:
locate [-eir]... PATTERN...
·选项参数:
-e:确认文件的确在文件系统中才列出此文件,否则,不会列出。(常用)
-i:忽略大小写(常用)
-r:后面可以正规表示法的显示方式(常用)
范例1:找出系统中所有与pwd有关的文件
范例二:找出 /etc 目录中所有以sh开头的文件
未完待续!!
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。