文件管理命令----压缩解压缩及归档基本工具

压缩、解压缩命令

压缩格式:gz, bz2, xz, zip, Z

压缩算法:算法不同,压缩比也会不同;

早期

压缩:

compress(压缩比很小): FILENAME.Z ―― 压缩后的文件名

解压:

uncompress

gzip、bzip2、xz只能压缩文件,并且默认压缩完成后删除源文件,zip可以压缩目录

gzip: .gz

gzip /PATH/TO/SOMEFILE:压缩完成后会删除原文件

-d: 解压缩

-#:1-9,指定压缩比,默认是6;

gunzip: (解压缩)

gunzip /PATH/TO/SOMEFILE.gz: 解压完成后会删除原文件

zcat /PATH/TO/SOMEFILE.gz: 不解压的情况,查看文本文件的内容

bzip2: .bz2

bzip2比gzip有着更大压缩比的压缩工具,使用格式近似

bzip2 /PATH/TO/SOMEFILE

-d:解压缩

-#: 1-9,指定压缩比,默认是6;

-k: 压缩时保留原文件

bunzip2 /PATH/TO/SOMEFILE.bz2 ―― 解压缩

bzcat /PATH/TO/SOMEFILE.bz2: 不解压的情况,查看文本文件的内容

xz: .xz

xz /PATH/TO/SOMEFILE

-d:解压缩

-#:  1-9,指定压缩比,默认是6;

-k: 压缩时保留原文件

unxz

xzdec:解压

-k 保留源文件

-c 输出到屏幕上

xzcat :不解压的情况,查看文本文件的内容

zip: 既归档又压缩的工具

zip FILENAME.zip FILE1 FILE2 …: 压缩后不删除原文件

unzip FILENAME.zip 解压

archive: 归档(把多个文件整合成一个文件),归档本身并不意味着压缩

tar: 归档工具, .tar —只归档不压缩

-c: 创建归档文件

-f FILE.tar: 操作的归档文件(f后面必须要有参数)

-x: 展开归档

–xattrs: 归档时,保留文件的扩展属性信息(备份)

-t: 不展开归档,直接查看归档了哪些文件

-zcf: 归档并调用gzip压缩

-zxf: 调用gzip解压缩并展开归档,-z选项可以省略

-jcf: 归档并调用bzip2压缩

-jxf: 调用bzip2解压缩并展开归档,

-Jcf: 归档并调用xz压缩  ―― (redhat6)

tar  -cf  xx.tar  FILE归档并调用xz压缩

xz ${DEST}.tar

-Jxf: 调用xz解压缩并展开归档,

cpio: 归档工具

file /boot/initr… .img ―― gzip

cp /boot/initr… .img /root

mv initr… .img initr…img.gz ―― 重命名

ls

gzip -d initr…img.gz ―― 解压文件

ls -lh

file initrd…img ―― cpio

练习:编写一个脚本

1.    从键盘获得两个两个值,并计算两值的和

#!/bin/bash

echo "Input two intergers:"

read A B

echo "$A + $B = $[$A+$B]"

2.从键盘让用户输入几个文件,脚本能够将此几个文件归档压缩成一个文件

#!/bin/bash

#

read -p "Input three files: " FILE1 FILE2 FILE3

read -p "Destnation : " DEST

read -p "Compress{gzip|bzip2|xz}: " COMP

case $COMP in

gzip)

tar -zcf ${DEST}.tar.gz $FILE1 $FILE2 $FILE3

;;

bzip2)

tar -jcf ${DEST}.tar.bz2 $FILE1 $FILE2 $FILE3

;;

xz)

tar -cf ${DEST}.tar $FILE1 $FILE2 $FILE3

xz ${DEST}.tar

;;

*)

echo "Unknown"

exit 8

;;

esac

脚本编程:

顺序结构

选择结构

if

case

循环结构

for

while

until

while循环:适用于循环次数未知的场景,要有退出条件

语法:

while CONDITION; do

statement

...

done

1.计算100以内所有正整数的和

#!/bin/bash

#

declare -i I=1

declare -i T=0

while [ $I -le 100 ];do

let T+=$I

let I++

done

echo $T

2.从键盘获取字符串,小写的替换成大写的输出,直到quit退出

#!/bin/bash

#

read -p "Input something: " STRING

while [ $STRING != 'quit' ]; do

echo $STRING | tr 'a-z' 'A-Z'

read -p "Input something:" STRING

done

3.每隔5s就检查hadoop是否登录,

如果登录,显示其登录并退出;否则,显示当前时间,并说明hadoop尚未登录

#!/bin/bash

#

who | grep "hadoop" &> /dev/null

RETVAL=$?

while [ $RETVAL -ne 0 ]; do

echo "`date`, hadoop is not login."

sleep 5

who | grep "hadoop" &> /dev/null

RETVAL=$?

done

echo "hadoop is logged in."

4.写一个脚本:

1) 显示一个菜单给用户:

d|D) show disk usages.

m|M) show memory usages.

s|S) show swap usages.

*) quit.

2) 当用户给定选项后显示相应的内容;

扩展:

当用户选择完成,显示相应信息后,不退出;

而让用户再一次选择,再次显示相应内容;除了用户使用quit;

#!/bin/bash

#

cat << EOF

d|D) show disk usages.

m|M) show memory usages.

s|S) show swap usages.

*) quit.

EOF

read -p "You choice: " CHOICE

while [ $CHOICE != 'quit' ]; do

case $CHOICE in

d|D)

echo "Disk usage:"

df -h ;;

m|M)

echo "Memory usage:"

free -m | grep "Mem" ;;

s|S)

echo "Swap usage:"

free -m | grep "Swap" ;;

*)

echo "Unknown."

;;

esac

read -p "You choice,Again: " CHOICE

done

echo命令

eg1:echo -e "\033[35mHello world\033[0m."

eg2:echo -e "\033[1;36;45mHello World.\033[0m"

-e开启逃逸符    \033表示ctrl

[0m结束符

一位数字,表示字体格式

eg:1,加粗显示

eg:5,字体闪烁

eg:7,前景色与背景色调换

两位整数表示,同时控制前后景,用分号分割

3#:字体前景色

4#:字体背景色

linux xz 解压initrd.img,2016-8-28 linux基础学习——压缩解压缩及归档 while脚本相关推荐

  1. linux xz 解压initrd.img,initrd.img的压缩(制作)及解压的过程

    一.启动镜像initrd.img 文件 类RedHat 系统从vmlinuz 核心引导后,会读取initrd.img 启动镜像.该文件中包含驱动模块等信息,是非常重要的文件.不同版本使用的格式不同. ...

  2. 【Linux 内核】编译 Linux 内核 ② ( 解压内核源码 | 查询当前 Linux 内核版本号 | 进入并查看 linux 内核源码目录 )

    文章目录 一.解压内核源码 二.查询当前 Linux 内核版本号 三.进入并查看 linux 内核源码目录 一.解压内核源码 将 下载的 Linux 内核源码 linux-5.6.14.tar.gz ...

  3. linux ftp解压命令 cannot fid or open,Linux环境搭建及常用shell命令集锦

    22.crontab –l 查看crontab命令行 (13) 23.重定向 (13) 24.ps –eaf | grep httpd 查找httpd进程 (13) 25.kill -9 PID 强制 ...

  4. Linux 源码编译安装过程-以安装XZ解压为例

    一.描述 Linux安装软件一般有两种安装方式:安装包安装和源码安装. 1.安装包安装.安装包安装比较简单,例如采用apt-get  install +软件名 命令,安装 deb 包的 Linux 操 ...

  5. 7z001怎么解压在安卓手机上面_安卓zip文件压缩RAR解压手机下载-安卓zip文件压缩RAR解压v1.0最新版下载...

    安卓zip文件压缩RAR解压是一款非常好用的手机压缩解压缩神器,在安卓zip文件压缩RAR解压上我们可以看到很多的实用的功能,软件可以帮助我们更好的处理我们手机中的文件,感兴趣的朋友赶紧下载安卓zip ...

  6. Linux如何解压tar.xz文件

    Linux如何解压tar.xz文件 其实这种文件其实是两层压缩,外层是.xz压缩方式,内层是.tar压缩方式 第一种:逐步解压 (base) root@bc23574385ad:~# ll -d cu ...

  7. linux安装解压工具gzip,笔记6 压缩工具(gzip,bzip2,xz,zip,tar)。

    压缩打包 常见的压缩文件 windows:rar.zip.7z Linux:.zip..gz..bz2..xz..tar..gz..tar.bz2..tar.xz gzip压缩工具 不能压缩目录 gz ...

  8. 【Linux】 解压tar.xz文件

    [Linux] 解压tar.xz文件 背景 方法1 方法2 背景 最近编译FFmpeg,找到之前下载的ffmpeg-4.2.2.tar.xz压缩文件. 本博客记录,解压tar.xz文件. 关于tar. ...

  9. Linux篇---解压tar.xz文件

    Linux篇---解压tar.xz文件 背景 方法1 方法2 背景 最近遇到一个报错, ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: v ...

最新文章

  1. php artisan 出错,Laravel 5.2 php artisan migrate:回滚错误
  2. 如何安装php网站,如何安装部署PHP网站
  3. 8、奇怪的表达式求值--2017网易春招
  4. c语言三个数从小到大排序/输出_我的c语言笔记(三)
  5. 查看layui的版本号
  6. 买房,有多少人帮助过你?
  7. 编译器错误不能找到元数据文件
  8. win10 VS2015社区版本 64位 TensorFlow 安装
  9. 前端用JS + SVG 实现关系图谱 流程图
  10. 摄影构图的几种基本方法
  11. 计算机开机界面用户如何删除,电脑开机用户去掉登录界面方法
  12. PCI驱动框架简单分析
  13. boost::geometry简介,真香
  14. 深度操作系统 15.7 —— 性能好才是真的好
  15. 上海跃兔网络科技有限公司简介
  16. [NOIP1999]Cantor表
  17. 西南大学计算机学院读博咋样,专硕想读博士,难吗?北大学长如是说!
  18. 服务器主板显示ff,主板诊断卡跑FF的原因及检查思路
  19. STM32项目设计:基于STM32的风向风速测量仪
  20. 微软推出超强关键词分析工具

热门文章

  1. PHP实现时间轴函数
  2. php 标准输出到文件格式,php格式输出文件var_export函数实例
  3. 查看详细_丹江口EH油泵入口滤芯W.38.B.0035_滤芯详细查看
  4. 什么是初效过滤器_聊聊中效过滤器的哪些事?
  5. docker mysql 查找ip_Docker 查看运行服务ip
  6. xml转换为mysql_如何将存储在XML文件中的数据转换为关系数据库(MySQL)?
  7. 存在就不插入_DOM 插入节点和三个Child方法
  8. 【Zookeeper系列】ZooKeeper管理分布式环境中的数据(转)
  9. 一篇SSM框架整合友好的文章(二)
  10. C#Redis列表List