我正在使用外部硬盘来存储音乐,现在我在电脑上安装了 Linux。
我想删除desktop.ini
硬盘上数千个嵌套文件夹中的所有文件,如何仅使用 bash 来实现这一点?
答案1
可能只使用 bash 就可以完成,但实际上使用 可能是一个更好的选择find
。
假设您对相关目录有写权限,那么它将非常简单:
find /media/external-music-store -iname desktop.ini -delete
要首先测试它(强烈建议),请尝试以下操作:
find /media/external-music-store -iname desktop.ini -print | less
这将为您提供要删除的所有文件的可滚动列表。(要退出less
,请按q;要上下滚动,请使用箭头键。)
我确信find
大多数 Linux 发行版(当然大多数面向桌面的发行版)的标准安装中都包含它。Debian 将它打包为findutils
andessential
包required
。
使用-iname
会导致文件名不区分大小写匹配,符合 Windows 的语义。其对应部分-name
使用区分大小写的匹配(这是类 Unix 系统(包括 Linux)的正常操作模式)。