更多技术文章请关注:http://www.vimkid.com
#!/bin/bash
echo "=============== kid_front Frame Shell ================"
echo " kid_front Frame Script"
echo " "
echo " This is a compress shell of css html javascript"
echo " "
echo "============ By Vimkid: www.vimkid.com ==============="
read -p " ^_^ Please input the directory :" directory
# 常量
home="/var/www/kid_front" # 项目目录
suffix="compress" # 后缀
# copy到一个新文件夹
cd $home # 进入框架目录
rm -rf $directory"_"$suffix # 删除旧有的压缩目录
cp -R $directory $directory"_"$suffix # 拷贝项目到压缩目录
# 压缩html文件
cd $home
cd $directory"_"$suffix
sed -i 's/^[ \t]*//g' *.html # 删除行头空格及tab
sed -i 's/[ \t]*$//g' *.html # 删除行尾空格及tab
sed -i '/^\s*$/d' *.html # 删除空行
sed -i ':t;N;s/\n//;b t' *.html # 合并多行到一行
# 压缩css文件
cd $home
cd $directory"_"$suffix"/assets/css"
sed -i 's/^[ \t]*//g' *.css # 删除行头空格及tab
sed -i 's/[ \t]*$//g' *.css # 删除行尾空格及tab
sed -i '/^\s*$/d' *.css # 删除空行
sed -i ':t;N;s/\n//;b t' *.css # 合并多行到一行
# 压缩javascript文件
cd $home
cd $directory"_"$suffix"/assets/js"
sed -i 's/^[ \t]*//g' *.js # 删除行头空格及tab
sed -i 's/[ \t]*$//g' *.js # 删除行尾空格及tab
sed -i 's/:\/\//:--kidfix--/g' *.js # 排除http:// ftp:// sftp:// https:// ,替换法
sed -i 's/\/\/.*//g' *.js # 删除//注释
sed -i 's/:--kidfix--/:\/\//g' *.js # 排除http:// ftp:// sftp:// https:// ,替换法,替换回
sed -i '/^\s*$/d' *.js # 删除空行
sed -i ':t;N;s/\n//;b t' *.js # 合并多行到一行
网友评论