【Linux命令】 03_文件搜索命令

数据块

linux中存储文件的最小单位
1数据块 = 512字节 = 0.5K

一、文件搜索命令

1. find

功能:文件搜索
语法:find [搜索范围] [匹配条件]
例:
    - 按文件名查找 (-name -iname)
        find /etc -name init 在/etc目录下(会递归搜索),根据文件名精确匹配init的文件
        find /etc -name *init* 模糊搜索,*为通配符,替代0或大于0个字符
        find /etc -name init??? 模糊搜索,?替代一个字符
        
        find /etc -iname init* 搜索时不区分文件名大小写
        
    - 按文件大小查找 (-size)
        find /etc -size +204800   查找目录下大于100MB的文件204800的单位是数据块。 +204800表示大于100MB,-204800表示小于,无单位表示=(不常用)
    
    - 按所有者查找 (-user)
    - 按所属组查找 (-group)
        find /etc -user wxh
        find /home -group lsp
        
    - 按时间查找 (-amin访问时间,-cmin文件属性,-mmin文件内容)
        find /etc -cmin -5 查找目录下5分钟内文件属性被修改过的文件,-5表示5分钟内。默认单位为分钟
    
    - 按文件类型查找 (-type)
        f文件,d目录,l软链接
        find /etc -name init -a -type f 目录下找init名的且文件类型是文件的
    
    - 按i节点查找 (-inum)
        find . -inum 31531  当前目录下找到i节点为31531的文件
    
    - 条件连接符 (-a与,-o或)
        find /etc -size +163840 -a -size -204800  找大于80MB小于100MB的文件
    
    - 命令连接符 (-exec,-ok)
        语法:-exec 命令 {} \ ;
        功能:对查找到的文件执行输入的命令
        例:
            find /etc -name init -exec ls -l {} \ ; 找到文件名为init的文件,并列出文件信息
            
            find /etc -name init -ok ls -l {} \ ;  找到文件名为init的文件,并列出文件信息,对每个文件是否执行操作会询问

2. locate

功能:在文件资料库中查找文件。
特点:新创建的文件可能没有收录进文件资料库,可以使用updatedb命令更新资料库。
    /tmp目录下的文件查找不到。
    查找效率高
例:
    locate init  文件资料库中查找init的文件(模糊查找)
    locate -i ttt 选项-i是查询时不区分大小写

3. which

功能:搜索命令所在目录及别名信息
语法:which 命令
例:which ls

4. whereis

功能:搜索命令所在目录及帮助文档路径
例: where ls

5. grep

功能:查找文件中指定字符串所在行
选项:-i 不区分大小写
      -v 排除指定字符串所在行
例:
    grep -v ^# /etc/inittab  显示不以#开头的行。(^表示行首)

二、帮助命令

6. man/info

功能:查看命令和配置文件的帮助信息
例:man ls
    man 5 passwd  查询passwd配置文件的帮助
注:当存在帮助和命令同名的情况,如:passwd。1代表命令,5代表配置文件

7. help

功能:查看内置命令的帮助
例:help cd
注:内置命令无法用man等命令查找帮助文档,只能用help

三、用户管理命令

8. useradd

功能:添加新用户
例: useradd me

9. passwd

功能:设置用户密码
例:passwd me

10. who

功能:查看登陆用户信息
1
2
3
4
5
6
[input] who
[output]
root tty1 2020-08-03 02:40
root pts/0 2020-08-03 04:28 (192.168.0.104)
// 登陆用户 登陆终端 登陆时间(IP地址)
// 登陆终端:tty本地终端,pts远程终端

11.w

功能:获得登陆用户详细信息
1
2
3
4
5
6
7
8
9
10
[input] w
[output]
05:01:47 up 2:23, 2 users, load average: 0.01, 0.01, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - 02:40 33:57 0.08s 0.08s -bash
root pts/0 192.168.0.104 04:28 0.00s 0.07s 0.04s w
// 第一行中
//系统时间 up表示系统持续运行时间 用户数量 系统负载情况
// 下面表格中
// 用户 终端类型 IP 登陆时间 用户空闲时间 累计占用CPU时间 当前操作占用CPU时间 当前操作

四、文件压缩命令

12. gzip

功能:压缩文件
语法:gzip [文件]
压缩后文件格式:.gz
例: gzip file
注:只能压缩文件,不能压缩目录。压缩完后原文件不保留

13. gunzip(gzip -d)

功能:解压.gz文件
例:gunzip file.gz
注:只能解压文件,不能解压目录

14. tar

功能:打包目录
语法:tar [-zcf] [压缩后文件名] 要压缩的目录]
注:-f 要放在选项最后
*打包压缩选项:
      -c 打包
      -v 显示打包目录信息
      -f 指定文件名
      -z 打包同时压缩
压缩后文件格式:.tar.gz
例:tar -cvf Jac.tar Jac  仅打包目录,还需要自己压缩
    tar -zcf Jac.tar.gz Jac 打包并压缩

*解包解压选项:
      -x 解包
      -v 显示打包目录信息
      -f 指定解压文件
      -z 解压缩
例:tar -zxvf Jac.tar.gz

15. zip

功能:压缩文件或目录
压缩后格式:.zip
语法:zip [-r] [压缩后文件名] [文件或目录]
选项: -r 压缩目录
例: zip zipedfile.zip file  压缩文件
    zip -r zipeddir.zip dir  压缩目录

16. unzip

功能:解压.zip文件
语法:unzip [压缩文件]
例:unzip test.zip

17. bzip2

功能:压缩文件
压缩后格式:.bz2
语法:bzip2 [-k] [文件]
选项:-k 压缩后保留原文件
例: bzip2 -k files
    tar -cjf Jac.tar.bz2 Jac

18. bunzip2

功能:解压文件
语法:bunzip2 [-k] [压缩文件]
选项:-k 解压后保留原文件
例:bunzip2 -k files.bz2
    tar -xjf Jac.tar.bz2

【Linux命令】 03_文件搜索命令
http://blog.rainna.xyz/2020/11/22/2020-11-22-03_文件搜索命令/
作者
rainnalv
发布于
2020年11月22日
许可协议