Css 使用sed解压样式表
我将样式表压缩为一行,使用Css 使用sed解压样式表,css,regex,bash,sed,compression,Css,Regex,Bash,Sed,Compression,我将样式表压缩为一行,使用 cat stylesheet.css | gsed "s|/\*\(\\\\\)\?\*/|/~\1~/|g" -e "s|/\*[^*]*\*\+\([^/][^*]*\*\+\)*/||g" -e "s|\([^:/]\)//.*$|\1|" -e "s|^//.*$||" | tr '\n' ' ' | sed -e "s|/\*[^*]*\*\+\([^/][^*]*\*\+\)*/||g" -e "s|/\~\(\\\\\)\?\~/|/*\1*/|g" -
cat stylesheet.css | gsed "s|/\*\(\\\\\)\?\*/|/~\1~/|g" -e "s|/\*[^*]*\*\+\([^/][^*]*\*\+\)*/||g" -e "s|\([^:/]\)//.*$|\1|" -e "s|^//.*$||" | tr '\n' ' ' | sed -e "s|/\*[^*]*\*\+\([^/][^*]*\*\+\)*/||g" -e "s|/\~\(\\\\\)\?\~/|/*\1*/|g" -e "s|\s\+| |g" -e "s| \([{;:,]\)|\1|g" -e "s|\([{;:,]\) |\1|g"
我正试图扭转这个过程
cat stylesheet-compress.css | gsed 's/\([;{]\)\([^\n]\)/\1\n\t\2/g' | gsed 's/\([^}]\)}/\1;\n}\n\n/g' | gsed 's/{/ {/g' | gsed 's/[,]/& /g' | gsed '/}/ { n;n; s/}\n\([^\n]\)/}\n\n\1/ }'
大多数情况下都有效,但是一些css条目有缩进和额外的;'我想您正在寻找CSS格式化程序。网上有很多。例如。如果您必须从shell执行此操作,我会生成另一个程序来执行繁重的操作。这就行了。我不明白这怎么可能。将所有内容放在一行中会删除有关过去在多行中的方式的信息。有多种方法可以将信息放在多行上。如果你只选择一个,它不一定是原始的。重复的问题区域——你真正想做的是缩小CSS,同时重新排序规则以获得更好的gzip压缩。作为一个
sed
粉丝,将问题添加到收藏夹中进行分析,我什么时候有心情去!@#$让我开动脑筋。省去你自己的麻烦,下载一个css缩微器和压缩程序