linux shell 批处理,[例子]Linux下shell批处理文件的几种方法

附上网友们总结出来的方法如下(以批量解压tar文件为例):

第一:

for tar in *.tar.gz; do tar xvf $tar; done

for tar in *.tar.bz2; do tar xvf $tar; done

第二:用tar命令批量解压某个文件夹下所有的tar.gz文件

ls *.tar.gz | xargs -n1 tar xzvf

第三:find -maxdepth 1 -name “*.bz2″|xargs -i tar xvjf {}

这条命令可解压当前目录下的所有bz2文件,maxdepth表示搜索深度,1代表只搜索当前目录

第四:for i in $(ls *.tar);do tar xvf $i;done

以上,第二个方法最为简单明了!

再附上第四种,附上批量压缩静态文件(js、css)成tar.gz:

此脚本 好处是判断文件修改时间,不重复生成

find ./ -type f -printf ‘%TY %Tm %Td %TH %TM %TS\t%p\n’ \

| grep -iE ‘\.(html|txt|css|js)$’ \

| awk -F’\t’ ‘{

gz_file=$2 “.gz”;

stat_cmd=”stat -c \”%Y\” ” gz_file;

exist_cmd=”[ -e \"" gz_file "\" ] && echo 1 || echo 0″;

exist_cmd | getline gz_file_exist;

if (gz_file_exist) {

stat_cmd | getline last_modify_timestamp;

} else {

last_modify_timestamp=0;

}

if (last_modify_timestamp < mktime($1)) {

system(“gzip -c9 ” $2 ” > ” gz_file);

print gz_file ” [created]“;

}

}’

此脚本结合nginx的gzip static模块使用,编译时加上--with-http_gzip_static_module

nginx.conf中加上:

sendfile on; # 最好打开这个sendfile

gzip on;

gzip_static on;

gzip_http_version 1.0;

gzip_disable "MSIE [1-6]\.";

gzip_vary on;

gzip_comp_level 2;

gzip_min_length 1024;

gzip_buffers 4 16k;

gzip_types text/plain html application/x-javascript text/css;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值