> 文章列表 > Linux tail命令的巧妙应用

Linux tail命令的巧妙应用

Linux tail命令的巧妙应用

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文件到文件尾