Redhat Linux下文件查找及压缩解压

    技术2025-08-17  15

    可执行文件的搜索

    which :显示一个可执行文件的完整路径

    # which ls  //查看命令ls这个可执行文件的完整路径alias ls='ls --color=tty'        /bin/ls

    which 首先查找系统中别名记录(alias),然后查找系统路径($PATH)

    # which pwd/bin/pwd# which halt/sbin/halt# which cal/usr/bin/cal

    whereis :用于显示查找文件的路径、该文件的帮助文件路径、该文件的相关原程序的路径,例如:

    # whereis fstabfstab: /etc/fstab /usr/include/fstab.h /usr/share/man/man5/fstab.5.gz# whereis passwdpasswd: /usr/bin/passwd /etc/passwd.OLD /etc/passwd /usr/share/man/man5/passwd.5.gz /usr/share/man/man1/passwd.1.gz

    find

    find 是我们最常用的文件查找工具,语法:

    find  [路径]  [参数]   [表达式]# find      .         -name      "liusuping"           //查找当前目录含有liusuping的文件                                命令    路径       参数      表达式./liusuping

    find的常用find参数如下:

    -user:根据文件拥有者寻找文件-group:根据文件所属组寻找文件-name:根据文件名寻找文件-perm:根据文件权限寻找文件-size:根据文件大小寻找文件-type:根据文件类型寻找文件,参数对应c、b、l、f、d

    # find . -user liusuping     //查找文件的拥有者是liusuping的文件./liusuping./liusuping.com

    # find . -group liusuping   //查找文件的所属组是liusuping的文件./liusuping./liusuping.com

    grep - 显示文件中匹配关键字的行

    grep用来从一个文件中找出匹配指定关键字的那一行,并送到标准输出。 结合管道,我们通常用它来过滤搜索结果,用的超多!例如:

    # ls -a |grep bash      //列出含有bash的文件.bash_history.bash_logout.bash_profile.bashrc

    # ls -a |grep liusuping    //列出含有liusuping的文件liusupingliusuping.com

    常用的文件操作指令

    diff -  报告文本差异内容

    # echo "liusuping">file1    //将“liusuping”添加到file1中# cat file1liusuping# echo "liusuping">file2# diff file1 file21c1< liusuping---> liusuping

    uniq - 去除文件中重复的行

    -u参数可以只显示那些没有被重复过的行;-d显示有被重复过的行。

    # cat liusupingthis is liusupingthis is liusupingthis is liusupingthis is liusupingthis is liusuping.com   //观察到只有this is liusuping重复4次

    # uniq -d liusuping //显示有被重复过的行this is liusupingthis is liusuping

    # uniq -u liusuping//显示没有被重复过的行this is liusuping.comthis is liusuping.com

    压缩和打包

    在Linux系统中,常用的打包文件是.tar,压缩文件有tar.gz和.zip。可以使用tar命令将文件打包或者压缩成.tar.gz文件,处理.zip文件的命令有zip和unzip

    tar命令

    语法: tar 主选项  文件或目录说明:用于对多个文件或目录打包,但不压缩,同时可以用于解包。常用选项说明:-c     创建一个打包文件-v     详细报告tar处理的文件信息-f     使用打包文件或设备时是必选选项-x     解除打包文件的内容-z     用gzip来压缩/解压缩文件,加上这个选项后可以对打包文件进行压缩,同时还原时也一定要使用该选项来进行解压缩

    # tar -cvf liusuping.tar   liusuping  //将liusuping文件打包成liusuping.tarliusuping# ll liusuping.tar-rw-r--r-- 1 root root 10240 Sep 27 02:56 liusuping.tar

    # tar -czvf liusuping.com.tar.gz   liusuping.com       //将liusuping.com打包并且用gzip进行压缩成liusuping.com.tar.gzliusuping.com# ll liusuping.com.tar.gz-rw-r--r-- 1 root root 136 Sep 27 02:58 liusuping.com.tar.gz

    # tar xvf liusuping.tar -C /               //解包liusuping.tar到根目录liusuping# cd /               //切换到根目录[root@localhost /]# ll liusuping-rwSr-Sr-- 1 liusuping liusuping 74 Sep 27 02:22 liusuping

    gzip命令

    语法:gzip  选项   压缩(解压缩)的文件名说明:用于对系统文件进行压缩和解压缩,压缩后系统自动在源文件后加.gz扩展名

    常用选项说明:

    -d    将压缩文件解压-t    测试,检查压缩文件是否完整

    不加任何选项直接压缩

    # gzip liusuping         //压缩liusuping文件成liusuping.gz# ll liusuping.gz-rw-r-Sr-- 1 liusuping liusuping 46 Sep 27 02:22 liusuping.gz# ll liusuping      //发现源文件liusuping没了,被压缩了ls: liusuping: No such file or directory# gzip -t liusuping.gz     //检查压缩文件是否完整# gzip -d liusuping.gz    //解压liusuping.gz# ll liusuping-rw-r-Sr-- 1 liusuping liusuping 74 Sep 27 02:22 liusuping

    对于用gzip压缩的文件,有一系列以z为开头的文件,可以在不经解压的情况下,直接操作文件

    # gzip liusuping# cat liusuping.gz                            ……乱码报错.....# zcat liusuping.gzthis is liusupingthis is liusupingthis is liusupingthis is liusupingthis is liusuping.com

    bzip2命令

    语法:bzip2  选项  压缩文件 

    说明:用于对文件或目录进行压缩或解压缩,压缩文件的扩展名默认为.bz2

    -d    将压缩文件解压-t    测试,检查压缩文件是否完整

    不加任何选项直接压缩

    # bzip2 liusuping          //压缩liusuping文件成liusuping.bz2# ll liusuping.bz2-rw-r-Sr-- 1 liusuping liusuping 67 Sep 27 02:22 liusuping.bz2# ll liusuping          //发现源文件liusuping没了,被压缩了ls: liusuping: No such file or directory# bzip2 -t liusuping.bz2         //检查压缩文件是否完整# bzip2 -d liusuping.bz2          //解压liusuping.bz2# ll liusuping-rw-r-Sr-- 1 liusuping liusuping 74 Sep 27 02:22 liusuping

    最新回复(0)