Linux下的五个查找命令,有什么区别? 您所在的位置:网站首页 linux中搜索文件的命令有哪些 Linux下的五个查找命令,有什么区别?

Linux下的五个查找命令,有什么区别?

2024-07-15 04:18| 来源: 网络整理| 查看: 265

man

学习Linux命令,就得会看帮助文档,不然选项太多,根本记不住。常用的帮助文档命令有man,info,–help。一般用man比较多,比help命令细,比info命令简单。输入 man 命令,即可进入man page(手册页面)。

man page常用的部分如下

块名介绍NAME命令的名称和简要介绍SYNOPSIS命令的基本格式DESCRIPTION命令功能的概要介绍OPTIONSman命令最基本的部分,命令的各种选项,以及对选项的简要介绍 man java

Java命令的基本格式如下 在这里插入图片描述 Java命令的选项 在这里插入图片描述 可以看到Java支持很多参数,参数的类型就有标准参数,非标准参数多种。每个参数类型下面又包含许多参数。

man page下的常命令如下

命令解释↑向上移动一行↓向下移动一行空格 或者 f [ forward(向前) ]向下翻动一页b [backward(前后)]向上翻动一页/ 搜索词 回车在man page中查找指定内容,从上往下搜,n下一个,N上一个? 搜索词 回车在man page中查找指定内容,从下往上搜,n下一个,N上一个 find

find 是最常用和最强大的命令,实时遍历磁盘文件 find命令的基本语法如下

find [查找目录] [查找条件] [查找完成后的操作]

查找条件相当多,名字,类型,权限,用户,修改时间,大小,举几个例子

# 当前目录下(含子目录)以apache开头的文件 find -name "apache*" ./apache-tomcat-8.5.34 ./zookeeper-3.4.12/docs/skin/images/apache-thanks.png ./zookeeper-3.4.12/docs/api/org/apache # maxdepth可以设置查找的深度 # 查找的深度为1,即只查找当前文件夹 find -maxdepth 1 -name "apache*" ./apache-tomcat-8.5.34 # 显示/etc目录下的文件夹 find /etc -type d # 查找权限为777的文件 find / -perm 777

文件类型有如下几种

字符解释d目录l符号链接(指向另一个文件)s套接字文件b块设备文件c字符设备文件p命名管道文件-普通文件 locate

locate命令其实是"find -name"的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/mlocate,cenos7的路径),这个数据库中含有本地所有文件信息。

cenos7上没有locate,需要手动安装

# 安装包 yum -y install mlocate # 更新数据库 updatedb

这个数据库每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

# 查看etc目录下的脚本 locate /etc/*.sh /etc/dhcp/dhclient.d/chrony.sh /etc/dhcp/dhclient.d/ntp.sh /etc/kernel/postinst.d/51-dracut-rescue-postinst.sh # 查看etc目录下以a开头的文件 locate /etc/a /etc/adjtime /etc/aliases /etc/aliases.db which

在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

看一下我的环境变量

echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/lib/jdk1.8.0_191/bin:/usr/local/maven/apache-maven-3.6.1/bin which java /usr/lib/jdk1.8.0_191/bin/java which grep alias grep='grep --color=auto' /usr/bin/grep whereis

显示出命令的可执行程序, 源文件(如果存在的话)以及man page的路径

whereis ls ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz whereis java java: /usr/lib/jdk1.8.0_191/bin/java type

查看命令类型,常见的类型有如下几种

命令类型alias别名keyword关键字,shell保留字builtinshell内置命令file外部命令 type ls ls is aliased to `ls --color=auto'、 type cd cd is a shell builtin 参考博客

[1]https://www.toutiao.com/i6641020686133379598/ [2]http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html [3]https://www.toutiao.com/i6637315516413248013/ [4]https://blog.csdn.net/m0_38121874/article/details/77019127



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有