ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

shell脚本实战(第2版)/人民邮电出版社 脚本33 处理压缩文件

2022-01-22 10:31:41  阅读:170  来源: 互联网

标签:脚本 bzlist shell gz 压缩文件 eval arg newargs echo


Z="compress";	unZ="uncompress";	Zlist=""
gz="gzip"	ungz="ungzip";		gzlist=""
bz="bzip2"	unbz="bunzip2"		bzlist=""

for arg do
	if [ -f "$arg" ];then
		case	"$arg"	in
			*.Z)	$unZ	"$arg"
				arg="$(echo $arg | sed 's/\.Z$//')"
				Zlist="$ZList \"$arg\"" 
				;;
			*.gz)	$ungz	"$arg"
				arg="$(echo $arg | sed 's/\.gz$//')"
				gzlist="$gzList \"$arg\"" 
				;;
			*.bz2)	$unbz	"$arg"
				arg="$(echo $arg | sed 's/\.bz2$//')"
				bzlist="$bzlist\"$arg\""
				;;
		esac
	fi
	newargs="${newargs:-""} \"$args\""
done


case $0 in
	*zcat*)	eval	cat 	$newargs	;;
	*zmore*) eval 	more	$newargs	;;	
	*zgrep*) eval	grep	$newargs	;;	
	*)	echo "$0:unknown base name.Can't preceed.">&2
		exit1
esac

if [ ! -z "$list" ];then
	eval $Z $Zlist
fi

if [ ! -z "$gzlist" ];then
	eval $gz $gzlist
fi
if [ ! -z "$bzlist" ];then
	eval $bz $bzlist
fi
exit 0

运行结果

 

标签:脚本,bzlist,shell,gz,压缩文件,eval,arg,newargs,echo
来源: https://blog.csdn.net/weixin_43873960/article/details/122633757

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有