• 常用基本命令十(linux压缩和解压缩)


    1、gzip/gunzip压缩

        1)基本语法:

                    gzip+文件             (功能描述:压缩文件,只能将文件压缩为*.gz文件)

                   gunzip+文件.gz    (功能描述:解压缩文件命令)

    2)特点:

            (1)只能压缩文件不能压缩目录

            (2)不保留原来的文件

    3)案例

        (1)gzip压缩

                   [root@hadoop101 opt]# ls

                   test.java

                   [root@hadoop101 opt]# gzip test.java

                   [root@hadoop101 opt]# ls

                   test.java.gz

    (2)gunzip解压缩文件

                  [root@hadoop101 opt]# gunzip test.java.gz

                  [root@hadoop101 opt]# ls

                  test.java

     

    2、zip/unzip压缩

    1)基本语法:

                  zip + 参数 + XXX.zip + 将要压缩的内容 (功能描述:压缩文件和目录的命令,window/linux通用且可以压缩目录且保留源文件)

           参数:

                  -r 压缩目录

    2)案例:

           (1)压缩 1.txt 和2.txt,压缩后的名称为mypackage.zip

                         [root@hadoop101 opt]# zip test.zip test1.java  test.java

                         adding: test1.java (stored 0%)

                         adding: test.java (stored 0%)

                         [root@hadoop101 opt]# ls

                         test1.java  test.java  test.zip

           (2)解压 mypackage.zip

                         [root@hadoop101 opt]# unzip test.zip

                         Archive:  test.zip

                          extracting: test1.java             

                          extracting: test.java       

                         [root@hadoop101 opt]# ls

                         test1.java  test.java  test.zip

     

    3、tar打包

    1)基本语法:

                         tar + 参数 + XXX.tar.gz + 将要打包进去的内容         (功能描述:打包目录,压缩后的文件格式.tar.gz)

                参数:

                         -c 产生.tar打包文件

                         -v 显示详细信息

                         -f 指定压缩后的文件名

                         -z 打包同时压缩

                         -x 解包.tar文件

    2)案例

    (1)压缩:tar -zcvf  XXX.tar.gz   n1.txt    n2.txt

           压缩多个文件

                         [root@hadoop101 opt]# tar -zcvf test.tar.gz test1.java test.java

                         test1.java

                         test.java

                         [root@hadoop101 opt]# ls

                         test1.java  test.java  test.tar.gz

             

            压缩目录

                         [root@hadoop101 opt]# tar -zcvf test.java.tar.gz test1

                         test1/

                         test1/hello

                         test1/test1.java

                         test1/test/

                         test1/test/test.java

                         [root@hadoop106 opt]# ls

                         test1 test.java.tar.gz

    (2)解压:tar -zxvf  XXX.tar.gz

           解压到当前目录

                        [root@hadoop101 opt]# tar -zxvf test.tar.gz

                        tar --no-same-owner -xzvf test.tar.gz -C /opt

           解压到/opt目录

                        [root@hadoop101 opt]# tar -zxvf test.tar.gz -C /opt

     

    4、使用root解压后文件夹权限不是root

    使用root解压文件 tar -zxvf xxx.tar.gz 解压后,使用ll命令查看时候发现,文件的所有者不是root, userid 和groupid都是1000

    根据id,gid找到用户信息,需要root权限,到/etc/passwd文件下查询对应的用户信息,在当前用户命令行使用 ID 命令 查询

    userid,gid信息,结果不是root用户

    这个和参数设置有关,使用 tar --no-same-owner -zxf 指定 --no-same-owner可以解决这个问题:

    使用 --no-same-owner 会指定操作用户作为解压后文件的所有者

    如果解压的时候,想要更改所属的用户,例如用户mt  ,可以加上 --owner=mt,

    不选择参数,就是默认指定参数--same-owner,压包的时候是谁的,就解压给谁

    tar命令在解压时会默认指定参数--same-owner,所以以后解压文件一定要注意这个情况呀



     

  • 相关阅读:
    二分法
    php冒泡排序
    php位运算
    php学习函数如何执行的
    php学习 打星星
    小程序的学习备注
    一个IP与多个域名绑定
    apache、mysql、php核心、phpmyadmin的安装及相互关联
    php虚拟主机配置( 输入网址 对应 ip地址)
    ORA-01084: OCI 调用中的参数无效
  • 原文地址:https://www.cnblogs.com/heihouzi/p/8663058.html
Copyright © 2020-2023  润新知