Linux 入门笔记(三)

来源:互联网 发布:linux ping的使用 编辑:程序博客网 时间:2024/06/06 03:49

文件搜索命令

命令名称which
作用:现实系统命令所在目录,可提供命令的别名信息
范例:which ls  搜索命令ls所在的绝对路径

 

命令名称whereis
作用同上,可以找到路径帮助所在路径

 

命令名称find
原则:最后不要在根目录下查找,耗时!!范围越小越好!占用系统资源开销越小越好!比如说写一份计划在网络低峰期进行查找.
作用:查找文件或目录
find [搜索路径] [关键字]
范例:
以文件名查找      1. find /dir -name file   意为在目录dir下查找文件file(文件名仅为file的才会被找的)
                                find /dir -name file*  找以file开头的所有文件,*为匹配任意字符,包括0个
                                find /dir -name *file* 找包括file的文件
                                find /dir -name file???   ?匹配单个字符
     
以文件大小查找   2. find / -size +204800   意为在根目录下查找大于100MB的文件,100MB = 102400KB = 204800 block(数据块)
                                                  -204800   查找小于100MB的文件 
                              (在管理服务器时清空工作时能用)  
     
以文件所有者查找3. find /dir -user samlee 查找根目录下所有者为samlee的文件
 
 以时间查找          4. c - change改变,表示文件属性被改变过,如所有者、所属组、权限。
                                 a - access访问
                                m - modify修改,表示文件正文里面的内容被修改过
                                -表示多长时间之内,+表示超过多长时间
                                find /dir -ctime  
                                             -atime
                                             -mtime
                              (以天为单位的都是time)
                                             -cmin
                                             -amin
                                             -mmin
                              (以分钟为单位的都是min)
                               如:  find /dir -mmin -120  表示查找dir目录下的在120分钟之内被修改过内容的文件。
     
以文件类型查找    5. find /dir -type  f file    
                                                        f 二进制文件, l 软链接文件, d 目录
 
  连接符: -a  “and”与  ,-o  “or”或
                 -exec   find的二次操作,不询问确认
                 -ok       find的二次操作,会询问确认 
           
  范例:find /dir -size +204800 -a -type f  意为在dir目录下查找大小大于  
             find ... -exec 命令 {} \;(固定格式)      {}表示find查询的结果,\表示转义符,符号命令使用本身含义, ;表示结束
             find /dir -name file -exec ls -l {} \;                              
             find /dir -name file -exec rm {} \;   表示查找到file文件直接删除。
             find /dir -name file -ok rm {} \;     表示查找到file文件询问是否删除。
             find /dir -name file* -a -type f -exec ls -l {} \;    表示查找一个二进制类型的以file开头的文件并查看详细信息。
          
例子:  如果删除删不了时,比如说创立了一个名为a b的文件,删除时输入rm a b,电脑会识别成删除a和b,这是就要用i节点。
            上述说过每个文件都有对应的i节点。
            先敲入 ls -i ,查找要删除文件的i节点的数字标识(假如例子中的a b文件的i节点是16),在输入find /dir -inum 16 -exec rm {} \;   就可以直接删除了。
            删除的是原文件,硬链接依然保存。
            -inum   ,查看i节点的数字标识
                   
命令名称
locate
作用:寻找文件或目录(所有的)
注意:比find快,但是find是在整个根目录下查找,而locate是在目录文件的更新的数据库中查找。
           所以,locate要配合一个指令updatedb使用

命令名称updatedbupdate the slocatedatabase)
作用:建立整个系统文件的数据库  
范例:在一个test目录下,新建一个文件file,用find /test -name file可以找到,但是用locate /test file是找不到的。
           系统会定期更新数据库,所以过一段时间用locate /test file也是可以找到的,但是马上敲入updatedb,再用locate /test file是可以找到的。
     
命令名称grep
作用:在文件中搜寻字符串匹配的行并输出
           比如说用more /etc/services查看services文件里的详细全部信息。我们现在要查找所有和ftp相关的协议信息,一行一行看需要很多时间。
           grep ftp /etc/services,就可以看到所有包含ftp字串的信息。
      
帮助命令
命令名称manmanual)
作用:获得帮助信息
           man ls  查看ls命令的帮助信息
           man services  查看配置文件services的帮助信息、
           注意:1.man /etc/services是错误的,man只是查看配置文件的信息。
                      2.当有命令和配置文件的名字一样时,比如说Linux有一条命令是passwd(用于创建密码),也存在配置文件在目录/etc/passwd 的,
                         当键入man passwd时,系统会优先执行查看paaswd命令的帮助信息。
                         解决办法也有:man的种类有5种,第五种就是查看配置文件的信息。所以要查看passwd的文件信息时,键入man 5 passwd
           
命令名称infoinformation)
作用:获得帮助信息
使用同上 。。。

 

命令名称whatis   apropos   makewhatis
作用:获得索引的简短说明信息(提取用途)
           whatis ls
           apropos fstab        相当于man -k    
范例:makewhatis   建立whatis和apropos搜索使用的数据库,当使用这两个命令发生错误时,就是whatis database没有建立

 

命令名称help
作用:查看shell内置命令的帮助
范例:当用man来看cd时,内容很乱,全部都是一些shell内置的命令,并不是cd命令的帮助文档。
           help cd 可以查看cd本身的帮助信息。
           help bash可以看出shell内置命令有哪些。