linux的常用命令(文件搜索命令三)

命令:find
语法:find [搜索范围路径] -name 【文件名称】(根据文件名查找)
           find [搜索范围路径] -size [(+-)文件大小] (根据文件大小查找,大于+ 小于-)
           find [搜索范围路径] -user(文件的所有者)
           find [时间查找] [以天为单位]
[以天为单位] 1 ctime、atime、mtime 
[以分钟为单位] 2 cmin、amin、mmin
           。。。。。

描述:查找任何文件或目录(所有)

find命令示例:find [搜索范围路径] -name


匹配任意字符 *


匹配指定字符 ?


find [搜索范围路径] -size [+-文件大小] (根据文件大小查找,大于+小于-)
注意,对于文件的大小是以数据块为单位。数据块大小是512bit
形如:如需查找100M的文件,那么就要知道100M为多少block?
100M = ? block
1M = 1024K
100M = 102400K
1K = 2 block

100M = 2*102400 block


find [搜索范围路径] -user(文件的所有者)

描述:查找隶属于某个用户的文件




 find [时间查找] [以天为单位]
 天: ctime、atime、mtime
 分钟:cmin、amin、mmin
c表示:change 改变文件属性的意思(比如所有者、所属组、权限变更)。
a表示:access 表示被访问过的意思(比如被查看过等)。
m表示:modify 更改内容的意思。

在时间前面添加:-表示之内,+表示之外

描述:查看文件下120分钟以内发生变更的文件




find应用的连接符:
 -a (and的意思,逻辑与)

 -o(or的意思,逻辑或)





find查找:根据文件类型进行查找:
-type 

其中:f表示二进制文件,l表示软连接文件 d表示目录



命令:which
语法:which [命令名称]
描述:查看命令所在的目录位置
在linux里面一般只有两种命令,第一种是所有用户都可以使用,第二种则是只允许管理员使用,还有一个命令叫whereis,和which使用类似

比如: rm命令,其实我们可以使用 which rm查看其命令内容:


alias就是别名的意思,说明我们使用的rm命令在默认的情况下加了 -i选项,意思是在删除的时候进行询问是否需要删除,那么添加"\"就使用真正的rm命令而不是别名,直接就可以删除不需要提示询问。
find的连接执行符号:
find ... -exec [执行命令] {} \;  

注意:“{}"表示find命令查找的结果,而"\"表示转义符

find ... -exec [执行命令] {} \;  


find ... -ok [执行命令] {} \;

ok和exec的区别就是ok有询问确认的意思。


有时候我们看到find命令非常的长,这样你可能会很晕,其实其中的道理非常简单,就是使用之前我们所学习的命令,把这些弄清楚,完全可以应付离开别人写的很长的命令操作。


find -inum [i节点标号] 根据i节点查找文件,在linux系统中,所有的文件都有一个唯一的标识,方便linux内核去调用,这就是i节点




命令:locate
语法:locate [文件名称]

描述:查找文件,根据linux数据库内部的索引(updatedb命令,可以手工更新updatedb数据库,一般和locate配合使用)


注意:locate的查找速度非常快,比find查找快很多,原因是locate查找的是linux系统构建的文件数据库的索引值,所以速度非常快,但是有的时候新创建的文件使用locate命令查找不到,原因是这个文件的索引没有马上更新到linux系统文件数据库里



命令:man
语法:man [命令或者配置文件], 
描述:帮助命令,非常的有用,可以获得命令的帮助文档,如何使用等。


命令:whatis 
语法:whatis [命令]
描述:查看命令的描述。


命令:--help
语法:[命令] --help  
描述: 查看命令的选项用法。


猜你喜欢

转载自blog.csdn.net/ancuan9514/article/details/79965944