Linux实操篇(搜索查找类、压缩解压类:常用命令)

接上篇:Linux实操篇(用户权限类:常用命令)

 

find:查找文件或目录

-- 在指定的目录下递归查找满足条件的文件或者目录显示在终端
-- 搜索范围:通常是在一个目录下搜索,默认不写目录,则表示当前目录下
-- 选项 -name:按照指定的文件名查找文件
-- 选项 -user:按照文件或目录所属用户名查找文件
-- 选项 -size:按照指定的文件大小查找文件
-- 选项 -size 单位 b:块(512字节)
-- 选项 -size 单位 c:字节
-- 选项 -size 单位 w:字
-- 选项 -size 单位 k:千字节
-- 选项 -size 单位 M:兆字节
-- 选项 -size 单位 G:G字节
find [搜索范围] [选项]
-- 在根目录下的root目录下查找名称为info的文件或者目录(即当前所在目录)
[root@hadoop100 ~]# find /root/ -name info
/root/.local/share/Trash/info
-- 在当前所在目录下查找名称为info的文件或者目录(即根目录下的root目录下)
[root@hadoop100 ~]# find -name info
./.local/share/Trash/info
[root@hadoop100 ~]# touch 公共/info
[root@hadoop100 ~]# find -name info
./.local/share/Trash/info
./公共/info
[root@hadoop100 ~]# find /root/公共/ -name info
/root/公共/info
[root@hadoop100 ~]# rm 公共/info
rm:是否删除普通空文件 "公共/info"?y
-- 使用通配符*来进行查找
[root@hadoop100 ~]# find -name "*.cfg"
./anaconda-ks.cfg
./initial-setup-ks.cfg
./.config/yelp/yelp.cfg
./.local/share/telepathy/mission-control/accounts.cfg
./.local/share/telepathy/mission-control/accounts-goa.cfg
-- 根据选项 -user 查找文件属于ithailin的文件或目录
[root@hadoop100 ~]# find /home/ -user ithailin
/home/ithailin
/home/ithailin/.mozilla
/home/ithailin/.mozilla/extensions
/home/ithailin/.mozilla/plugins
/home/ithailin/.bash_logout
/home/ithailin/.bash_profile
/home/ithailin/.bashrc
/home/ithailin/.cache
/home/ithailin/.cache/abrt
/home/ithailin/.cache/abrt/lastnotification
/home/ithailin/.config
/home/ithailin/.config/abrt
/home/ithailin/.bash_history

[root@hadoop100 ~]# ls -lh
总用量 8.0K
-rw-------. 1 root root 1.7K 7月  25 16:25 anaconda-ks.cfg
-rw-r--r--. 1 root root 1.8K 7月  25 16:28 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 8月  19 16:40 公共
drwxr-xr-x. 2 root root    6 7月  25 16:28 模板
drwxr-xr-x. 2 root root    6 7月  25 16:28 视频
drwxr-xr-x. 2 root root    6 7月  25 16:28 图片
drwxr-xr-x. 2 root root    6 7月  25 16:28 文档
drwxr-xr-x. 2 root root    6 7月  25 16:28 下载
drwxr-xr-x. 2 root root    6 7月  25 16:28 音乐
drwxr-xr-x. 2 root root   34 8月  16 15:36 桌面
-- 查找当前目录下文件大小大于2M的文件
[root@hadoop100 ~]# find -size +2M
./.cache/mozilla/firefox/43xwjys1.default-default/startupCache/scriptCache.bin
./.cache/mozilla/firefox/43xwjys1.default-default/startupCache/startupCache.8.little
./.mozilla/firefox/43xwjys1.default-default/places.sqlite
./.mozilla/firefox/43xwjys1.default-default/favicons.sqlite
View Code

locate:快速定位文件所在目录

locate指令利用事先建立的系统中所有文件名称及路径的 locate数据库实现快速定位给定的文件。 locate指令无需遍历整个文件系统,査询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate数据库。

locate数据库并不是实时更新的,因此需要在查询前执行一次命令:updatedb 进行 locate数据库的更新操作;

locate [搜索文件名]

[root@hadoop100 ~]# updatedb
[root@hadoop100 ~]# locate tmp
/tmp
/etc/tmpfiles.d
/etc/selinux/tmp
/etc/selinux/targeted/active/modules/100/tmpreaper
...
...
...

grep:过滤查找文件以及 ”|“ 管道符

管道符 ”|“:表示将前一个命令处理的结果输出到后面的命令进行处理

-- 选项 -n:显示匹配行及行号
grep [选项] [查找内容] [源文件]
-- 查找当前目录下 initial-setup-ks.cfg文件中boot的内容,并显示行号
[root@hadoop100 ~]# grep -n boot initial-setup-ks.cfg
3:xconfig  --startxonboot
12:# Run the Setup Agent on first boot
13:firstboot --enable
23:network  --bootproto=dhcp --device=ens33 --ipv6=auto --activate
24:network  --bootproto=dhcp --hostname=hadoop100
31:# System bootloader configuration
32:bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
-- 查看当前目录下的文件或目录,并且进行筛选,.cfg的进行显示
[root@hadoop100 ~]# ls | grep .cfg
anaconda-ks.cfg
initial-setup-ks.cfg

wc:统计,配合管道符”|“使用

-- 在当前目录下initial-setup-ks.cfg文件里查找boot,并显示行号
[root@hadoop100 ~]# grep -n boot initial-setup-ks.cfg
3:xconfig  --startxonboot
12:# Run the Setup Agent on first boot
13:firstboot --enable
23:network  --bootproto=dhcp --device=ens33 --ipv6=auto --activate
24:network  --bootproto=dhcp --hostname=hadoop100
31:# System bootloader configuration
32:bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
-- 将前面的结果进行统计。wc:统计命令
[root@hadoop100 ~]# grep -n boot initial-setup-ks.cfg | wc
-- 第一个数表示行数,第二个数表示单词数量(以空格分割),第三个数表示所有单词所占用的字节大小
      7      29     316

gzip、gunzip:压缩、解压文件

-- 只能压缩文件,不能压缩目录
-- 不保留原文件
-- 同时压缩多个文件会产生多个压缩包
-- gzip 文件:压缩文件,只能将文件压缩成 *.gz后缀名的文件
-- gunzip 文件.gz:解压文件
gzip 文件
gunzip 文件.gz
[root@hadoop100 ~]# ls
aaa.txt  anaconda-ks.cfg  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
[root@hadoop100 ~]# gzip aaa.txt
[root@hadoop100 ~]# ls
aaa.txt.gz  anaconda-ks.cfg  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
[root@hadoop100 ~]# gunzip aaa.txt.gz
[root@hadoop100 ~]# ls
aaa.txt  anaconda-ks.cfg  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
View Code

zip、unzip:压缩、解压

-- 压缩文件或目录,并保留原文件
-- 选项 -r:压缩目录
zip [选项] xxx.zip

-- 解压文件或目录,并保留原文件
-- 选项 -d<目录>:指定解压后文件的存放目录
unzip [选项] xxx.zip
[root@hadoop100 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
-- 压缩
[root@hadoop100 ~]# zip -r myroot.zip /root/
  adding: root/ (stored 0%)
  adding: root/.bash_logout (stored 0%)
  adding: root/.bash_profile (deflated 19%)
  ...
  ...
  ...
  adding: root/.viminfo (deflated 75%)
[root@hadoop100 ~]# ls -lh
总用量 52M
-rw-------. 1 root root 1.7K 7月  25 16:25 anaconda-ks.cfg
-rw-r--r--. 1 root root 1.8K 7月  25 16:28 initial-setup-ks.cfg
-rw-r--r--. 1 root root  52M 8月  22 10:38 myroot.zip
drwxr-xr-x. 2 root root    6 8月  19 16:40 公共
drwxr-xr-x. 2 root root    6 7月  25 16:28 模板
drwxr-xr-x. 2 root root    6 7月  25 16:28 视频
drwxr-xr-x. 2 root root    6 7月  25 16:28 图片
drwxr-xr-x. 2 root root    6 7月  25 16:28 文档
drwxr-xr-x. 2 root root    6 7月  25 16:28 下载
drwxr-xr-x. 2 root root    6 7月  25 16:28 音乐
drwxr-xr-x. 2 root root   34 8月  16 15:36 桌面

-- 解压
[root@hadoop100 ~]# unzip -d /tmp myroot.zip
Archive:  myroot.zip
   creating: /tmp/root/
 extracting: /tmp/root/.bash_logout
 ...
 ...
[root@hadoop100 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  myroot.zip  公共  模板  视频  图片  文档  下载  音乐  桌面
[root@hadoop100 ~]# ls /tmp/
root                                                                          vmware-root_600-2722697857
systemd-private-0d6c84431f64426bbc3df028ab1996fb-bolt.service-Op48jT          vmware-root_604-2731152132
systemd-private-0d6c84431f64426bbc3df028ab1996fb-chronyd.service-CCkPx4       vmware-root_605-3980232922
systemd-private-0d6c84431f64426bbc3df028ab1996fb-colord.service-G2j5WP        vmware-root_608-2722828967
systemd-private-0d6c84431f64426bbc3df028ab1996fb-cups.service-cnZwc9          vmware-root_609-3988556153
systemd-private-0d6c84431f64426bbc3df028ab1996fb-rtkit-daemon.service-gM4eUW  vmware-root_625-4021587817
tracker-extract-files.0                                                       vmware-root_629-4013395692
vmware-root_593-4022112081                                                    vmware-root_651-4013395565
vmware-root_598-2689143944                                                    yum_save_tx.2022-08-16.14-15.8j8dwv.yumtx
[root@hadoop100 ~]# ls /tmp/root/
anaconda-ks.cfg  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
View Code

tar:打包、归档

-- 打包目录,压缩后的文件格式为 tar.gz
-- 选项 -c:产生tar.gz打包文件
-- 选项 -v:显示详细信息
-- 选项 -f:指定压缩后的文件名
-- 选项 -z:打包同时压缩
-- 选项 -x:解包 .tar 文件
-- 选项 -C:解压到指定目录
tar [选项] xxx.tar.gz [将要打包的目录或文件]
[root@hadoop100 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
-- 选项 -z:打包并压缩
-- 选项 -c:产生tar.gz打包文件
-- 选项 -v:显示详细信息
-- 选项 -f:指定压缩后的文件名
[root@hadoop100 ~]# tar -zcvf myroot.tar.gz anaconda-ks.cfg initial-setup-ks.cfg 文档/
anaconda-ks.cfg
initial-setup-ks.cfg
文档/
[root@hadoop100 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  myroot.tar.gz  公共  模板  视频  图片  文档  下载  音乐  桌面
-- 选项 -z:打包并压缩
-- 选项 -x:解压文件
-- 选项 -v:显示详细信息
-- 选项 -f:指定压缩后的文件名
[root@hadoop100 ~]# tar -zxvf myroot.tar.gz -C /tmp/
anaconda-ks.cfg
initial-setup-ks.cfg
文档/
[root@hadoop100 ~]# ls /tmp/
anaconda-ks.cfg                                                               vmware-root_600-2722697857
initial-setup-ks.cfg                                                          vmware-root_604-2731152132
systemd-private-0d6c84431f64426bbc3df028ab1996fb-bolt.service-Op48jT          vmware-root_605-3980232922
systemd-private-0d6c84431f64426bbc3df028ab1996fb-chronyd.service-CCkPx4       vmware-root_608-2722828967
systemd-private-0d6c84431f64426bbc3df028ab1996fb-colord.service-G2j5WP        vmware-root_609-3988556153
systemd-private-0d6c84431f64426bbc3df028ab1996fb-cups.service-cnZwc9          vmware-root_625-4021587817
systemd-private-0d6c84431f64426bbc3df028ab1996fb-rtkit-daemon.service-gM4eUW  vmware-root_629-4013395692
tracker-extract-files.0                                                       vmware-root_651-4013395565
vmware-root_593-4022112081                                                    yum_save_tx.2022-08-16.14-15.8j8dwv.yumtx
vmware-root_598-2689143944                                                    文档

 

接下篇:Linux实操篇(磁盘管理类:常用命令)

posted @ 2022-08-19 16:29  DHaiLin  阅读(122)  评论(0编辑  收藏  举报