Linux下巧用tail命令创建自解压tar文件

时间:2008-09-24 02:36:34  来源:网翼收集整理  作者:  【背景色 杏仁黄 秋叶褐 胭脂红 芥末绿 天蓝 雪青 灰 银河白

Tail命令参数中有一个参数-n, --lines=N,可以直接输出一个文件中的最后N行。

利用此参数,结合tar命令可以在linux下创建类似windows下winrar的自解压了。

# !/bin/sh

[ $# != "1" ] && echo "Usage: $0 tarfile" && exit 0

DESTFILE="$1.sh" 

echo "# !/bin/sh" > $DESTFILE 

echo "LINES=\`wc -l \$0 | awk '{ print \$1 }'\`" >> $DESTFILE # 计算目标文件的行数 

echo "LINES=\`expr \$LINES - 4\`" >> $DESTFILE # 计算需要输出的行,为总行数-4(4行执行脚本) 

echo "tail -n \$LINES \$0 | tar -xv " >> $DESTFILE # 输出并释放(可以结合-z/-j释放压缩文件) 

echo "exit 0" >> $DESTFILE

chmod +x $DESTFILE 

cat $1 >> $DESTFILE #添加tar文件到文件尾

文章评论

共有 0位网翼网友发表了评论 查看完整内容

推荐信息