返回顶部

Linux 压缩工具及shell脚本编程实战应用

解压缩工具使用

压缩比:压缩前和压缩后的比例,目的以时间(cpu)换空间(磁盘空间)

gzip 

文件名以 .gz 结尾,默认会删除源文件

gzip 压缩

gunzip 解压

zcat  查看压缩后文件的内容

常用的参数

  • -d:解压缩,相当于gunzip;
  • -#:指定压缩比,默认是6;数字越大压缩比越大(1-9);
  • -c:将压缩结果输出至标准输出;
  • gzip -c FILE > /PATH/TO/SOMEFILE.gz

bzip2

bzip2 [OPTION]... FILE...

  • -d:解压缩
  • -#:指定压缩比;默认是6;数字越大压缩比越大(1-9);
  • -k:keep,保留原文件;

xz

xz [OPTION]... FILE...

  • -d:解压缩
  • -#:指定压缩比;默认是6;数字越大压缩比越大(1-9);
  • -k:保留原文件;

zip
zip/unzip

 归档工具使用

tar命令:

  • tar [OPTION]... FILE...

(1) 创建归档

  • -c -f /PATH/TO/SOMEFILE.tar FILE...
  • -cf /PATH/TO/SOMEFILE.tar FILE...

(2) 展开归档

  • -xf /PATH/FROM/SOMEFILE.tar
  • -xf /PATH/FROM/SOMEFILE.tar -C /PATH/TO/SOMEDIR

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

  • -tf /PATH/TO/SOMEFILE.tar

归档完成后通常需要压缩,结果此前的压缩工具,就能实现压缩多个文件了;
(4) 归档压缩

  • -z:gzip2
  • -zcf /PATH/TO/SOMEFILE.tar.gz FILE...

解压缩并展开归档:-zxf /PATH/TO/SOMEFILE.tar.gz

bash脚本编程之用户交互

与用户交互 read

简单小案例

read [option]... [name ...]
-p 'PROMPT'   提示信息
-t TIMEOUT 设置超时时间

-n 不换行

实例

#!/bin/bash
#
read -p "Enter a username: " name
[ -z "$name" ] && echo "a username is needed." && exit 2

read -p "Enter password for $name, [password]: " password
[ -z "$password" ] && password="password"

if id $name &> /dev/null; then
    echo "$name exists."
else
useradd $name
    echo "$password" | passwd --stdin $name &> /dev/null
    echo "Add user $name finished."
fi		

 

posted @ 2019-10-15 23:06  Crazymagic  阅读(387)  评论(0编辑  收藏  举报