Вопрос

Как мне удалить все файлы в папке, в которой есть апостроф?

например:

Бэйрд/'ы Tunnel.jpg

Бах/'s Birds.jpg

Это нехорошо//'t good.png

Я бы хотел, чтобы все эти файлы были удалены, но все, что не имеет апострофа, осталось нетронутым, например:

это good.jpg не удаляйте файл.png

Это было полезно?

Решение

В sh вы могли бы сделать

rm *\'*

Другие советы

Вы можете использовать find команда:

find . -name "*'*" -delete

Как указал @Bryan в своем комментарии, это приведет к удалению всех файлов в текущем каталоге и все подкаталоги.Если вы не хотите переходить по каталогам, используйте:

find . -name "*'*" -maxdepth 1 -delete

что делает find оставайтесь в текущем каталоге.

GNU найти

find /path/ -type f -name "*[']*" -exec rm {} +;
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top