which命令——查找用户所执行的命令文件存放的目录
which命令用于查找Linux命令程序并显示所在的具体位置,其搜索范围主要由用户的环境变量PATH决定(可以执行“echo $PATH”命令查看),这个范围也是Linux系统在执行命令或程序时的默认搜索路径。
例:which ls命令后,可以找到名为ls的,位于/usr/bin/ls的命令程序文件。
find命令——查找文件或目录
采用递归方式,根据目标的名称,类型,大小等不同属性进行精细查找
find [查找范围] [查找条件表达式]
查找类型 关键字 说明 按名称查找 -name 根据目标文件的名称进行查找,运用“*(所有)”及“?(一个字母)” 按文件大小查找 -size 一般使用“+”,“-”设置超过指定的大小作为查找条件,常用的容量单位包括kB,MB,GB 按文件属性查找 -type 根据文件类型进行查找 按用户查找 -user 根据用户查找 文件类型包括:普通文件(f),目录(d),块设备文件(b) 文字设备文件(c)等
块设备是指读取数据的设备(如硬盘,内存等)
字符设备是指按单个字符读取数据的设备(如键盘,鼠标等)
例:
find / -name a* 查找根目录a开头的文件
find /etc/ -size +50k 查找etc下面文件大于50k的
find / -user lq 查找系统中属主(用户)为lq的内容
find / -type f 查找系统中的所有文本文件
搜索命令后面+ -exec cp -rf {} 目标地址
将以上的一系列命令保存到 目标地址中。
例:find / -size -5k -a -name c* -a -type f -exec cp -rf {} /opt/bb/ \;
查找系统中小于5k且名称以a开头的且类型为文件的内容并把它复制到/opt/bb目录里面去。
注:以上查找都是广泛查找
各表达式之间使用逻辑运算符
“-a” 表示而且 (and) "-o"表示或者(or)
转载于:https://blog.51cto.com/14188767/2347767