我试图在 gnu/linux 中删除另一个文件夹中以“.”开头的所有文件夹。(点),为此我正在使用 find 实用程序,这就是我所拥有的:
find . -iname ^\..* -exec rm -rf {} \;
Run Code Online (Sandbox Code Playgroud)
但它没有做任何事情:(。我已经测试了正则表达式并且效果很好。有什么帮助吗??
非常感谢您的时间。
小智 5
find使用 globbing 语法,您可以使用它-type d来查找目录:
find . -type d -name '.?*' | vim -
Run Code Online (Sandbox Code Playgroud)
在使用 globbing 或使用正则表达式查找文件时,您需要非常小心.hidden,因为您可以很容易地选择.和删除整个文件夹,或者更糟糕的是,匹配..并删除整个父文件夹。考虑以下命令的后果:
/home/someuser bash$ rm -rf .*
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
544 次 |
| 最近记录: |