Linux-03-常用的查找命令

来源:互联网 发布:淘宝做什么产品好 编辑:程序博客网 时间:2024/06/05 17:25

which 命令名: 查找命令所在路径,并显示其别名。例如: which  ls

whereis 命令名:查找命令所在路径,并显示帮助文档所在路径。例如:whereis  ls

 

find  搜索路径  搜索关键字: 查找文件

find命令很复杂,需重点掌握!!!

1-name 按名称查找,例如:find  /etc  -name  init 

(注:Linux是精确匹配,只查找文件名为init的文件,而不像windows去查找包含“init”的文件)

通配符:

1.  * 匹配任意字符.

例: find  /etc  -name  init*,查找init开头的文件

find  /etc  -name  *init*,查找包含init的文件

2.  ?匹配单个字符.

find  /etc  -name  init???

 

2-size按文件大小查找(一般Linux是以数据块block为单位的,一般一个block=512字节,例如100M=102400k=204800block

例如:find  /etc  -size  +204800,在/etc目录下查找大于100M的文件

大于: +   find  /etc  -size  +204800,查找大于100M的文件

小于: -    find  /etc  -size  -204800,查找小于100M的文件

等于:直接写大小 find  /etc  -size  204800

 

3-user按文件所属者查找

例如:find  /home  -user  yijianbo

 

 

4 按时间查找(c:change,文件属性被修改过   a:access  m:modify,文件内容被修改过。   +  - 含义同以上按文件大小查找的含义,分别表示超过多长时间和在多长时间之内

 

1-ctime  -atime  -mtime :以天为单位例如:find  /etc  -ctime  -1 ,查找/etc目录下一个小时内被修改过属性的文件和目录

 

2-cmin  -amin  -mmin:以分钟为单位

例如:find /etc  -mmin 120 ,查找/etc目录下2个小时内被修改过文件内容的文件

 

 

5 -type 按类型查找  f:二进制文件  l:软链接文件   d:目录

例如:find  /etc -name  init* -a  -type  f,查找/etc下以init开头的二进制文件

 

 

6 使用连接符

1)第一组连接符:

-a   and,表示逻辑与

-o   or,逻辑或

例如:find  /etc  -size  +163840  -a  -size  -204800,查找/etc目录下大于80M并且小于100M的文件

 

 

 

2)第二组连接符:

-exec   对查找的结果直接进行处理

-ok    对查找结果进行处理,与exec唯一不同的是,处理之前先询问

其固定格式为:find ....  -exec  命令名  {}  \;   注意:最后\;之间无空格!{}表示find查询的结果集,\是转义符,  ;表示语句结束

例如:find  /etc  -name  inittab  -exec  ls  -l {}  \;   在/etc下查找inittab文件并显示其详细信息

例如:find  /home  -user   xiaoming   -exec  rm -rf  {}  \;   表示查找属于xiaoming的文件并删除,rm  -rf  :-r表示递归删除目录,-f 表示无确认

 

7 -inum  根据inode查找并删除特殊文件

ls -i 显示文件的inode

例如:

find  .  -inum  16,查找当前目录下inode16的文件

find  .  -inum  16  -exec  rm  {}  \;  删除当前目录下inode16的文件(对于有些命名特殊的文件,不好删除时,可以使用inode删除)

 

 

在文件中搜索字串的命令grep(应用很广)!!!

格式: grep  指定字串  源文件

例如:grep  ftp  /etc/services

 

 

帮助命令manman默认调用more命令来显示结果信息)

格式: man  命令或配置文件

man  ls :查看命令ls的帮助信息

man  services :查看配置文件services的帮助信息

 

 

 

当命令和配置文件重名时,man首先查看的是命令的帮助信息!

例如:passwd 用户名:修改用户密码

/etc/passwd是一个配置文件,则当使用man  passwd 时,显示的是命令passwd的帮助信息而不是配置文件的信息!

 

 

 

info  任何关键字: 作用同man(Unix无此命令)

 

若只想知道某个命令的选项信息,只需 命令名  --help 即可,例如ls --help

 

 

help  :查看shell内置命令的帮助信息(了解即可)

例如:help  cd

 

 

 

0 0
原创粉丝点击