bash - 有没有办法使用 bash 将目录中所有文件的所有选项卡更改为空格?
问题描述
我刚刚继承了一个新的 C++ 项目,其中大量文件使用制表符缩进,而最近的文件则使用空格进行编程。现在我想将它们全部更改为仅使用空格。不是进入每个文件并使用 EMacs 自动缩进功能,有没有更有效的方法可以用 bash 实现它?
解决方案
这将递归遍历项目文件并将制表符展开为空格。由于我确定您使用的是源代码管理,因此如果出现问题,您可以轻松恢复。
find /path/to/project -type f -name '*.cpp' -exec expand --initial {} +
默认值为 8 个空格,但您可以使用--tabs=4
或任何您想要的值。
该--initial
选项忽略非空格后面的选项卡。
推荐阅读
- python - 使用 Cloud Functions 在 Google Cloud Platform 中设置环境变量
- excel - 将“工作日”添加到 Excel 公式中的“if”语句中
- python - 如何从本身是超链接的href中获取URL?
- php - 使用 PHP 更新 SQL 数据
- syntax - 当我的语法似乎涵盖了所有输入时,为什么在 Yacc 中会出现语法错误?
- visual-studio-code - 显示变量时如何获取当前的frameid?
- c# - 不应该出现的异常 (System.FormatException)。如何调试?
- reactjs - 在没有 webpack 的 React 中使用本地图像的简短语法?
- python - 如何访问 docker 容器内的 mac os x 麦克风?
- angular - firebase 在推送对象时静默失败