背景:
当我们从网上复制一些源代码到本机的时候,一定会带上一些非常规字符(特殊字符),为了让源代码更规范,我们一般需要作一些处理:
1. 将连续的多个空格、制表符压缩成一个
2. 删除行尾多余的空格或制表符
3. 将每行第一个以空格开头的“那个空格”替换成“制表符”
完成以上任务,如果手工修改,那是相当麻烦的。所以我利用Linux bash的强大功能,写了一个脚本专门处理这个事情。处理后的代码基本上差不多,挺美观的,可能还要再手工对一些代码进行缩进处理(这一步很快的)
bash脚本如下:
#!/bin/bash
for i in $*
do
dos2unix $1
# 下一句功能:压缩空格,压缩制表符,删除末尾空格,删除末尾制表符,将第一个空格替换成制表符
tr -s ' ' ' ' < $1 | tr -s '\t' '\t' | sed 's/ *$//' | sed 's/\t*$//' | sed 's/^ /\t/' > $1
unix2dos $1
shift
done