当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux教程:tail命令的巧妙应用

Unix/Linux
Linux 下采用软件实现RAID
汉化你的RedHat全攻略(2)- TrueType字体的使用
汉化你的RedHat全攻略(3)- RedHat 7.0上的中文环境和输入法
汉化你的RedHat全攻略(4)- FAQ和一些总结
Linux与其他操作系统的区别
为什么我用 ipchains 构建的子网里的机器不能用 ftp?
轻轻松松的安装Slackware Linux -- 0.自序,观念篇
Linux命令Man解释:ftpaccess(5) :ftpd 的配置文件
Linux命令Man解释:chsh :更换你登入时所用的shell
Linux命令Man解释:chfn :改变你的finger讯息
Linux命令Man解释:apropos :在whatis资料库中搜寻特定字串
X-Window中如何设置字体
rpm命令参数列表
汉化你的RedHat全攻略(1)- 中文环境和中文输入法的安装
Linux命令Man解释:MIRROR:镜像远端节点上的档案
Linux命令Man解释:losetup :设定与控制loop devices
Linux命令Man解释:lilo :安装引导装载程序
Linux命令Man解释:groupmod :修改组
Linux命令Man解释:shutdown:让系统关机
Linux命令Man解释:SUDO(8):以root身份执行指令

Unix/Linux 中的 Linux教程:tail命令的巧妙应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-20   浏览: 295 ::
收藏到网摘: n/a

 

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