Linux(二)文件权限和压缩
1 搜索查找类
1.1 查找定位文件 find <搜索范围、路径> <选项>
find将从指定目录下递归地遍历其各个子目录,将满足条件的文件显示在终端。
选项说明
-
-name:按照名字查询
-
-user:查找指定用户名的文件
-
-size:查找指定大小的文件,如+10M表示大于等于10M的文件
通配符查找
[root@hadoop100 /]# find /root -name "*.cfg" /root/original-ks.cfg /root/anaconda-ks.cfg
属主查找
[root@hadoop100 /]# find /home -user hikaru /home/hikaru /home/hikaru/.mozilla /home/hikaru/.mozilla/extensions /home/hikaru/.mozilla/plugins
1.2 locate快速定位文件
locate指令利用实现建立的系统中所有文件名称及其路径的locate数据库快速定位给出的文件,Locate无需遍历整个文件系统,因此查询速度特别快,为了保证查询结果的准确度,管理员必须定时更新数据库。
[root@hadoop100 /]# updatedb [root@hadoop100 /]# locate redis.conf /etc/redis.conf /etc/redis.conf.rpmsave /mydata/redis/conf/redis.conf /myredis/redis.conf /usr/share/man/man5/redis.conf.5.gz /var/lib/docker/overlay2/398a283b3e2b584b07dcf6dbab7e167a8b8ddc5d8f8a86a65a6555128dda18db/diff/usr/local/etc/redis/redis.conf /var/lib/docker/overlay2/398a283b3e2b584b07dcf6dbab7e167a8b8ddc5d8f8a86a65a6555128dda18db/merged/usr/local/etc/redis/redis.conf
1.3 which 查询指令所在位置
[root@hadoop100 /]# which ll alias ll='ls -l --color=auto' /bin/ls [root@hadoop100 /]# which ls alias ls='ls --color=auto' /bin/ls [root@hadoop100 /]# which which alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' /bin/alias /usr/bin/which
1.4 grep过滤查找及"|"管道符
grep -n 检索指定文件中关键字出现的位置并显示行号
[root@hadoop100 ~]# grep -n python anaconda-ks.cfg 96:python
1.5 wc 词频统计,配合管道符使用
[hikaru@hadoop100 ~]$ ls > info [hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info Music Pictures postfile Public Templates Videos [hikaru@hadoop100 ~]$ cat info anaconda-ks.cfg Desktop Documents Downloads info Music Pictures postfile Public Templates Videos [hikaru@hadoop100 ~]$ wc info 11 11 97 info
查询出来的结果含义是:总共11行,11个单词,文件大小为97字节
2 压缩解压类
2.1 gzip/gunzip 压缩
gzip 将文件压缩为.gz
gunzip <file.gz> 将gz文件压缩包解压
gzip只能压缩文件不能压缩目录
不会保留之前的文件
同时多个文件压缩会产生多个压缩包
压缩:
[hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info Music Pictures postfile Public Templates Videos [hikaru@hadoop100 ~]$ ls > info2 [hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info info2 Music Pictures postfile Public Templates Videos [hikaru@hadoop100 ~]$ gzip info info2 [hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info2.gz info.gz Music Pictures postfile Public Templates Videos
解压:
[hikaru@hadoop100 ~]$ ls -lh total 16K -rw-------. 1 hikaru hikaru 2.8K Nov 13 22:11 anaconda-ks.cfg drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Desktop drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Documents drwxr-xr-x. 3 hikaru hikaru 21 Aug 26 00:46 Downloads -rw-rw-r--. 1 hikaru hikaru 113 Nov 13 23:43 info2.gz -rw-rw-r--. 1 hikaru hikaru 107 Nov 13 23:31 info.gz drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Music drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Pictures -rw-r--r--. 1 root root 13 Nov 5 03:28 postfile drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Public drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Templates drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Videos [hikaru@hadoop100 ~]$ gunzip info.gz info2.gz [hikaru@hadoop100 ~]$ ls -lh total 16K -rw-------. 1 hikaru hikaru 2.8K Nov 13 22:11 anaconda-ks.cfg drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Desktop drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Documents drwxr-xr-x. 3 hikaru hikaru 21 Aug 26 00:46 Downloads -rw-rw-r--. 1 hikaru hikaru 97 Nov 13 23:31 info -rw-rw-r--. 1 hikaru hikaru 103 Nov 13 23:43 info2 drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Music drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Pictures -rw-r--r--. 1 root root 13 Nov 5 03:28 postfile drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Public drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Templates drwxr-xr-x. 2 hikaru hikaru 6 Aug 11 21:11 Videos
2.2 zip/unzip 压缩
zip [-r] 压缩到指定目录
-r 选项表示递归压缩一个目录
unzip [-d] 解压到指定目录
[hikaru@hadoop100 ~]$ zip -r myroot.zip /root adding: root/ (stored 0%) [hikaru@hadoop100 ~]$ [hikaru@hadoop100 ~]$ [hikaru@hadoop100 ~]$ [hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info info2 Music myroot.zip Pictures postfile Public Templates Videos
2.3 tar 打包
tar [选项] xxxx.tar.gz 将要打包的内容(打包、压缩后文件的格式为 .tar.gz )
选项说明
-
-c:打包,产生.tar导包文件
-
-x:解包.tar文件
-
-v:显示详细信息
-
-f:指定压缩后的文件名
-
-z:打包的同时进行压缩
-
-C:解压到指定目录
压缩测试
[hikaru@hadoop100 ~]$ tar -zcvf info.tar.gz info info2 Public/ info info2 Public/ [hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info info2 info.tar.gz Music Pictures postfile Public Templates Videos
解压测试
[hikaru@hadoop100 ~]$ tar -zxvf info.tar.gz -C ./ info info2 Public/ [hikaru@hadoop100 ~]$ ls anaconda-ks.cfg Desktop Documents Downloads info info2 info.tar.gz Music Pictures postfile Public Templates Videos
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步