首页 > 解决方案 > 有没有办法使用 bash 将目录中所有文件的所有选项卡更改为空格?

问题描述

我刚刚继承了一个新的 C++ 项目,其中大量文件使用制表符缩进,而最近的文件则使用空格进行编程。现在我想将它们全部更改为仅使用空格。不是进入每个文件并使用 EMacs 自动缩进功能,有没有更有效的方法可以用 bash 实现它?

标签: bashtabsspaces

解决方案


这将递归遍历项目文件并将制表符展开为空格。由于我确定您使用的是源代码管理,因此如果出现问题,您可以轻松恢复。

find /path/to/project -type f -name '*.cpp' -exec expand --initial {} +

默认值为 8 个空格,但您可以使用--tabs=4或任何您想要的值。

--initial选项忽略非空格后面的选项卡。


推荐阅读