• linux命令--查找与帮助


    一、搜寻命令

    1.whereis命令

    whereis是搜索系统命令的命令,也就是说,whereis 命令不能搜索普通文件, 而只能搜索系统命令。
    命令名称:whereis
    英文原意:locate the binary, source, and manual page files for a command。
    所在路径:/usr/bin/whereis。
    执行权限:所有用户。
    功能描述:查找二进制命令、源文件和帮助文档的命令。

    [root@love2 ~]# whereis whereis
    whereis: /usr/bin/whereis /usr/share/man/man1/whereis.1.gz
    #whereis 命令不仅可以查看命令位置,还可以显示帮助文档位置。
    
    2.which 命令

    命令名称:which。
    英文原意:shows the full path of (shell) commands。
    所在路径:/usr/bin/which。
    执行权限:所有用户。
    功能描述:列出命令的所在路径

    [root@love2 ~]# which ls
    alias ls='ls --color=auto'
    	/usr/bin/ls
    
    #which命令与whereis命令类似,但是which命令会显示命令别名。
    
    3.locate 命令
    3.1、locate 命令才是可以按照文件名搜索普通文件的命令。

    命令名称:locate。
    英文原意:find files by name。
    所在路径:/usr/bin/locate。
    执行权限:所有用户。
    功能描述:按照文件名搜索文件。

    优点:按照数据库搜索,搜索速度快,消耗资源小。
    数据库位置/var/lib/mlocate/mlocate.db,
    可以使用 updatedb 命令强制更新数据库。
    缺点:只能按照文件名来搜索文件,而不能执行更复杂的搜索,比如按照权限、大小、修改时间等搜索文件。 
    
    [root@love2 ~]# locate edu.txt 
    /root/edu.txt
    
    3.2、配置文件 /etc/updatedb.conf
    PRUNE_BIND_MOUNTS = "yes" #开启搜索限制,使该配置文件生效。
    PRUNEFS = "9p afs anon_inodefs.... # 在 locate执行搜索时,禁止搜索这些文件系统类型 
    PRUNENAMES = ".git .hg .svn..."  #禁止搜索以这些后缀名结尾的文件
    PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev ..." #不搜索这些目录
    
    4.find 命令

    命令名称:find。
    英文原意:search for files in a directory hierarchy。
    所在路径:/bin/find。
    执行权限:所有用户。
    功能描述:在目录中搜索文件。

    4.1、按照文件名搜寻

    [root@love2 ~]# find 搜索路径 [选项] 搜索内容
    选项:
    -name: 按照文件名搜索
    -iname: 按照文件名搜索,不区分文件名大小写
    -inum: 按照inode号搜索

    4.2、按照文件大小搜索

    [root@love2 ~]# find 搜索路径 [选项] 搜索内容
    选项: -size [+|-]大小:
    按照指定大小搜索文件 这里的“+”的意思是搜索比指定大小还要大的文件,“-”的意思是搜索比指定大小还要小的文件.

    1bytes=8byte,我们在电脑上可见的最小单位为字节
                  `b'    for  512-byte  blocks (this is the default if no suffix       #64字节
                         is used)
    
                  `c'    for bytes                                                     #1字节 
    
                  `w'    for two-byte words                                            #1/4 字节
    
                  `k'    for Kilobytes (units of 1024 bytes)
    
                  `M'    for Megabytes (units of 1048576 bytes)
    
                  `G'    for Gigabytes (units of 1073741824 bytes)
    
    
    [root@love2 ~]# find . -size 442c
    ./edu.txt
    
    4.3、按照修改时间搜索

    Linux 中的文件有访问时间(atime)、数据修改时间(mtime)、状态修改时间(ctime)这三个 时间,我们也可以按照时间来搜索文件。

    [root@love2 ~]# find 搜索路径 [选项] 搜索内容 选项:  
    -atime [+|-]时间: 按照文件访问时间搜索  
    -mtime [+|-]时间: 按照文件数据修改时间搜索  
    -ctime [+|-]时间: 按照文件状态修改时间搜索 
    
    4.4 按照权限搜索命令格式。
    [root@love2 ~]# find 搜索路径 [选项] 搜索内容 
    选项:  
    -perm 权限模式: 查找文件权限刚好等于“权限模式”的文件  
    -perm -权限模式: 查找文件权限全部包含“权限模式”的文件  
    -perm +权限模式: 查找文件权限包含“权限模式”的任意一个权限的文件 
    
    4.5 按照所有者和所属组搜索
    [root@love2 ~]# 
    find 搜索路径 [选项] 搜索内容 
    选项:  
    -uid 用户ID:  按照用户ID查找所有者是指定ID的文件  
    -gid 组ID:   按照用户组ID查找所属组是指定ID的文件  
    -user 用户名:  按照用户名查找所有者是指定用户的文件  
    -group 组名:  按照组名查找所属组是指定用户组的文件  
    -nouser:   查找查找没有所有者的文件,主要用于查找垃圾文件
    
    4.6 按照文件类型搜索
    [root@love2 ~]# find 搜索路径 [选项] 搜索内容 
    选项:  
    -type d:  查找目录  
    -type f:  查找普通文件  
    -type l:  查找软链接文件
    -type s : 查找套接字文件 
    
    4.7 逻辑运算符
    用于连接多个条件.
    选项:  
    -a:  and逻辑与  
    -o:  or逻辑或  
    -not: not逻辑非
    
    find . -size +442c  -a  -type f
    #查找当前路径下大于442字节且类型为普通文件的文件。
    
    4.8 其他选项

    -exec
    [root@love2 ~]# find 搜索路径 [选项] 搜索内容 -exec 命令2 {} ;
    这个选项的作用其实是把 find 命令的结果交给由“-exec”调用的命令 2 来处理。“{}”就 代表 find 命令的查找结果。
    -ok 选项 “-ok”选项和“-exec”选项的作用基本一致,区别在于:“-exec”的命令 2 会直接处理,而不询 问;“-ok”的命令 2 在处理前会先询问用户是否这样处理,在得到确认命令后,才会执行

    find -size +442k  -a  -type f -exec wc -l {} ;
    查找大于442k,文件类型为普通文件的文件,且统计每个文件的行数。
    
    5.grep 命令

    grep 的作用是在文件中提取和匹配符合条件的字符串行,支持正则匹配。

    [root@love2 ~]# grep [选项] "搜索内容" 文件名 
    选项:  
    -i:    忽略大小写 
    -n:    输出行号 
    -v:    反向查找  
    --color=auto: 搜索出的关键字用颜色显示 
    
    • find 命令用于在系统中搜索符合条件的文件名,如果需要模糊查询,则使用通配符进行匹配,通配符 是完全匹配(find 命令可以通过-regex 选项,把匹配规则转为正则表达式规则,但是不建议如此)
    通配符 作用
    ? 匹配一个任意字符
    * 匹配 0 个或任意多个任意字符,也就是可以匹配任何内容
    [] 匹配中括号中任意一个字符。例如,[abc]代表一定匹配一个字符,或者是 a,或者是 b,或者是 c
    [-] 匹配范围内一个任意字符例如,[1-9],匹配1-9中的任意一个字符
    [^] 表示匹配不是中括号内的一个字符。例如,[^0-9]代表匹配一个不是数字的字符
    • grep 命令用于在文件中搜索符合条件的字符串,如果需要模糊查询,则使用正则表达式进行匹配, 正则表达式是包含匹配。
    正则 作用
    ? 匹配前一个字符重复 0 次,或 1 次(?是扩展正则,需要使用 egrep 命令)
    * 匹配前一个字符重复 0 次,或任意多次
    [] 匹配中括号中任意一个字符。例如,[abc]代表一定匹配一个字符,或者是 a,或者是 b,或者是 c
    [-] 匹配范围内一个任意字符例如,[1-9],匹配1-9中的任意一个字符
    [^] 表示匹配不是中括号内的一个字符。例如,[^0-9]代表匹配一个不是数字的字符
    ^ 匹配行首
    $ 匹配行尾

    二、其他命令

    1、管道符

    命令格式: 命令 1 | 命令 2 命令 1 的正确输出作为命令 2 的操作对象.

    [root@love2 ~] ll -a /etc/  | more
    #列出/etc目录下所有文件,且分页显示。
    
    2、alias 命令的别名

    命令的别名,就是命令的小名,主要是用于照顾管理员使用习惯的。

    alias grep='grep --color=auto'
    执行 grep命令时,其实是执行 grep --color=auto 目的是自动显示颜色
    可以在命令行中直接设置,但是是临时生效,重启就没了,可写到文件里,vim ~/.bashrc
    
    unalias 命令
    #取消别名
    

    三、帮助命令

    1.man 命令

    man 是最常见的帮助命令,也是 Linux 最主要的帮助命令
    命令名称:man。
    英文原意:format and display the on-line manual pages。
    所在路径:/usr/bin/man。
    执行权限:所有用户。
    功能描述:显示联机帮助手册

    1.1使用
    [root@love2 ~]# man [选项] 命令 
    选项:  
    -f:  查看命令拥有哪个级别的帮助  或   whatis  命令 
    -k:  查看和命令相关的所有帮助    或  apropos  命令 
    
    [root@love2 ~]# man tar
    #详细帮助。
    
    [root@love2 ~]# man -f  cat
    cat (1p)             - concatenate and print files
    cat (1)              - concatenate files and print on the standard output
    查看cat命令有哪几个级别的命令。
    
    1.2 man命令帮助级别

    2.info 命令

    info 命令的帮助信息是一套完整的资料,每个单独命令的帮助信息只是这套完整资料中的某一个小章节。

    2.1常用快捷键。
    ?键:它就会显示info的常用快捷键。
    N键:显示(相对于本节点的)下一节点的文档内容。
    P键:显示(相对于本节点的)前一节点的文档内容。
    U键:进入当前命令所在的主题。
    M键:敲M键后输入命令的名称就可以查看该命令的帮助文档了。
    G键:敲G键后输入主题名称,进入该主题。
    L键:回到上一个访问的页面。
    SPACE键:向前滚动一页。
    BACKUP或DEL键:向后滚动一页。
    Q:退出info。
    
    3.help 命令

    help 只能获取 Shell 内置命令的帮助
    命令名称:help。
    英文原意:help。
    所在路径:Shell 内置命令。
    执行权限:所有用户。
    功能描述:显示 Shell 内置命令的帮助。
    可以使用 type 命令来区分内置命令与外部命令 ,shell 是 Linux 的命令解释器

    [root@love2 ~]# type  help
    help is a shell builtin #表示为shell内置命令
    
    4.--help 选项 绝大多数命令都可以使用“--help”选项来查看帮助,这也是一种获取帮助的方法。

    例如: [root@love2 ~]# ls --help 这种方法非常简单,输出的帮助信息基本上是 man 命令的信息简要版。

  • 相关阅读:
    升级2010
    如何修改MSSQL的用户名
    减小delphi体积的方法
    Delphi调用大漠插件示例
    Delphi 7升级到XE2的字符串问题
    MSSQL 清空数据库中表的数据
    MSSQL 2008 密钥
    springboot 2.1.4 多数据源配置
    springboot 数据库连接 解决驼峰命名问题
    Flask 热更新
  • 原文地址:https://www.cnblogs.com/hjnzs/p/11926936.html
Copyright © 2020-2023  润新知