The samples of fd
找到当前目录下所有 .terraform/ 目录并删除
要删除当前目录下所有的 .terraform/ 目录(由于这些目录通常是隐藏的且被列在 .gitignore 中),你可以结合使用 fd 的隐藏文件开关、忽略文件开关以及执行命令功能。
最推荐的命令如下:
1. 最终删除命令
fd -H -I -t d '.terraform$' -x rm -rf
2. 参数详细解释:
-H(或--hidden): 允许搜索以.开头的隐藏文件/文件夹。-I(或--no-ignore): 非常重要。.terraform目录通常会被列在.gitignore中。默认情况下fd会跳过被 git 忽略的内容,加上-I才能找到它们。-t d(或--type directory): 限制搜索结果仅为“目录”,避免误删同名的普通文件。'.terraform$': 搜索模式。使用$结尾可以确保精确匹配以.terraform结尾的目录,防止误匹配到类似.terraform_backup的目录。-x rm -rf(或--exec): 对搜索到的每一个结果执行删除命令。fd会自动把路径传给rm -rf。
3. 安全建议(先预览,再删除)
在执行大规模删除操作前,建议先运行不带 -x 的命令预览一下,确认找到的路径都是你想删除的:
fd -H -I -t d '.terraform$'
补充:如果你想批量删除
如果目录非常多,使用大写的 -X 会一次性将所有路径传递给 rm,效率更高:
fd -H -I -t d '.terraform$' -X rm -rf
提示: 删除 .terraform 目录后,下次运行 Terraform 项目时需要重新执行 terraform init 来下载插件和初始化状态。