1

Я использую свой внешний жесткий диск для хранения музыки, и теперь я установил Linux на свой ПК.

Я хотел бы стереть все файлы desktop.ini в тысячах вложенных папок на жестком диске, как мне это сделать, используя только bash?

1 ответ1

5

Вероятно, это возможно сделать просто с помощью 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 который является essential и required пакетом.

Использование -iname вызывает совпадение имени файла без учета регистра, совпадающее с семантикой Windows. Его аналог -name использует чувствительный случай соответствие (который является нормальным режимом работы на Unix-подобные системы, в том числе Linux).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .