zoukankan      html  css  js  c++  java
  • 随堂练习 压缩和解压缩

    cmpress

    格式

    compress options [file...]

    解压缩

    uncompress file.Z

    常用选项

    -d  解压缩,相当于 nucompress

    -c  结果输出至标准输出,不删除原文件

    -v  显示详情

    gzip

    格式

    gzip [option] ... FILE...

    常见选项

    -k  keep,保留原文件,CentOS8 新特性

    -d  解压缩,相当于 gunzip

    -c  指定压缩比, # 取值为 1 - 9,值越大压缩比越大

    范例

    1)解压缩

    gunzip file.gz

    2)不显示解压缩的前提下查看文本文件内容

    zcat file.gz

    gzip -c messages >messages.gz

    gzip -c -d messages.gz > messages

    zcat messages.gz > messages

    cat messages | gzip > m.gz

    bzip

    格式

    bzip2 [option]... FILE...

    常用选项

    -k  keep,保留原文件

    -d  解压缩

    -c  结果输出至标准输出,保留原文件不改变

    -#  1 - 9 压缩比,默认为9

    范例

    1)解压缩

    bunzip2 file.bz2

    2)不显示解压缩的前提下查看文本文件内容

    bzcat file.bz2

    xz

    格式

    xz [option]... FILE ...

    常见选项

    -k  keep,保留原文件

    -d  解压缩

    -c  结果输出至标准输出,保留原文件不改变

    -#  压缩比,取值 1 - 9,默认是 6

    范例

    1)解压缩

    unxz file.xz

    2)不显示压缩的前提下查看文本文件内容

    xzcat file.xz

    zip

    可以实现打包目录和多个文件成一个文件并压缩,但可能会丢失文件属性信息

    范例

    1)打包并压缩

    zip -r /backup/sysconfig.zip  /etc/sysconfig

    2)不包括目录本身,只打包目录内的文件和子目录

    cd /etc/sysconfig ; zip -r /root/sysconfig.zip *

    3)默认解压缩至当前目录

    unzip /backup/sysconfig.zip

    4)解压缩至指定目录,如果指定目录不存在,会在其父目录(必须事先存在)下自动生成

    unzip /backup/sysconfig.zip  -d /tmp/config

    cat  /var/log/messages | zip messages -

    5)-p 表示管道

    unzip -p  messages.zip > messages

    打包和解包

    tar

    可以实现打包目录和多个文件打包成一个文件并压缩,保留文件属性不丢失,常用于备份功能

    格式

    tar [option] ...

    1)创建归档,保留权限

    tar -cpvf /PATH/FILE.tar  FILE...

    2)追加文件至归档:猪:不支持对压缩文件追加

    tar -rf  /PATH/FILE.tar  FILE...

    3)查看归档文件中的文件列表

    tar -t -f  /PATH?FILE.tar

    4)展开归档

    tar xf /PATH/FILE.tar

    tar xf /PATH/FILE.tar  -C  /PATH/

    5)结合压缩工具:归档并压缩

    -z  相当于 gzip 压缩工具

    -j  相当于 bzip2 压缩工具

    -J  相当于 xz 压缩工具

    范例

    tar zcvf  etc.tar.gz  /etc/

    tar jcvf  etc.tar.bz2  /etc/

    tar Jcvf  etc.tar.xz  /etc/

    1)只打包目录内的文件,不包括目录本身

    cd /etc  ; tar zcvf  /root/etc.tar.gz *

    2)利用 tar 进行文件复制

    tar c /data/  | tar x -C /backup

    --exclude 排除文件

    范例

    tar  zcvf /root/a.tgz --exclude=/apps/host1 --exclude=/apps/host2 /apps

    -T  选项指定输入文件

    -X  选项指定包含要排除的文件列表

    范例

    tar  zcvf mybackup.tgz  -T /root/includefilelist -x  /root/excludefilelist

    split

    可以分割一个文件为多个文件

    范例

    1)分割大的 tar 文件为多份小文件

    split  -b  Size -d tar-file-name  prefix-name

    split  -b   1m mybackup.tgz  mybackup-parts

    2)切换成的多个小文件使用数字后缀

    split  -b  1m -d  mybackup.tgz  mybackup-parts

    将多个切割的小文件合并成一个大文件

    cat  mybackup-parts*  >  mybackup.tar.gz

    cpio

    通过重定向的方式将文件进行打包备份,还原恢复的工具,他可以解压以 “.cpio” 或者 “.tar” 结尾的文件

    格式

    cpio [选项]  > 文件名或者设备名

    cpio [选项]  < 文件名或者设备名

    常见选项

    -o  output 模式,打包,将标准输入传入的文件名打包后发送到标准输出

    -i  input 模式,解压,对标准输入传入的打包文件名解包到当前目录

    -t  预览,查看标准输入传入的打包文件中包含的文件列表

    -o filename  输出到指定的归档文件名

    -A  向已存在的归档文件中追加文件

    -I  filename  对指定的归档文件名解压

    -F filename  使用指定的文件名替代标准输入或输出

    -d  解包生成目录,在 cpio 还原时,自动的建立目录

    -v  显示打包过程中的文件名称

    范例

    1)将 etc 目录备份

    find  ./etc  -print | cpio -ov  > bak.cpio

    2)将 /data 内容追加 bak.cpio

    find /data | cpio -oA  -F bak.cpio

    3)内容预览

    cpio  -tv < etc.cpio

    4)解包文件

    cpio -idv < etc.cpio

  • 相关阅读:
    如何实现九宫格布局-----源码如下
    查询出的数据记录字段要与实体类中的属性名一致
    2016/12/14---- C3P0
    Spring的数据库操作---- Spring框架对JDBC的整合 ---- 初始化JdbcTemplate对象
    Spring的数据库操作---- Spring框架对JDBC的整合---- 初始化连接池数据源对象
    Spring的数据库操作---- Spring框架对JDBC的整合---- Spring的数据库操作
    Spring的数据库操作---- Spring框架对JDBC的整合---- spring集成jdbc概述
    Spring的AOP机制---- AOP的注解配置---- AOP的注解配置
    Spring的AOP机制---- 切入点表达式---- 切入点表达式
    Spring的AOP机制---- AOP环绕通知---- AOP环绕通知
  • 原文地址:https://www.cnblogs.com/xuanlv-0413/p/13222534.html
Copyright © 2011-2022 走看看