大家都知道,一个专业的C语言程序员(码农),在写代码的时候(.c和.h)不会使用TAB键。
不使用TAB键的原因是:不同的环境中,TAB键占用的空格数不一样。这样就会导致在A环境上对齐得很好的代码,在B环境上完全对不齐,这是一个专业的程序员(码农)所不能容忍的,排版太乱,也真的看不下去。
那么问题来了,如果一个项目中,历史积累了很多TAB键,一个个地修改肯定太浪费时间,在一个文件或一个工程中批量替换是比较合适的,比较专业的IDE比如SourceInsight里面就可以设置并替换,但是要注意… …
替换的时候建议只替换源文件,不要替换makefile和其他脚本,因为makefile里面,有些地方必须是TAB键,否则就会有问题。
为了方便C程序员,有一个热心的shell程序员写了一个脚本,这个脚本可以批量递归替换一个目录下面的所有.c和.h文件中的TAB键为4个空格,如果目录下面还有子目录1,子目录1下面还有子目录2,子目录2下面还有.c和.h文件,也会替换。用专业术语来说,支持递归替换。
使用方式非常简单:
把replaceTAB.sh上传到需要操作的目录,注意脚本是递归执行的,也就是说该目录下所有的子目录下的.c和.h文件都会被修改。如果文件个数比较多,执行需要一定时间,一般是几分钟。
Step 1.
dos2unix replaceTAB.sh
Step 2.
chmod 755 replaceTAB.sh
Step 3.
./replaceTAB.sh yourDirName
如果需要扩展,可以修改一下shell脚本,加上对应的类型,比如cpp或hpp,大家可以自行改造这个脚本。
链接:
https://download.csdn.net/download/shenminjie2004/89429532
【讨论交流】
如果有疑问,可以私信93327349@qq.com交流。