ПРИМЕЧАНИЕ. Это предполагает, что вы используете соглашение о добавлении ~ суффикс для резервных копий. Если вы используете что-то другое, вам нужно изменить найти аргумент соответственно. Например, если вы используете, Если вы вместо чего-то вроде .бак, *~ вместо этого должно быть .бак.
Попробуй это:
Первый забег
sudo find /sites -type f -name '*~'
и просмотрите вывод. Если вам удобно удалять файлы в списке, повторно введите команду, но направьте вывод на г.м. как в
sudo find /sites -type f -name '*~' -print0 | xargs -0 /usr/bin/rm
Это заставит оболочку выполниться rm ПУТЬ для каждого PATHNAME в списке.
* характер в бить является подстановочным знаком. Он будет соответствовать одному или нескольким экземплярам практически любого символа. Наиболее заметным исключением из этого правила является / символ, поэтому в вашем примере он соответствует только одному каталогу за раз. Использовать ** чтобы соответствовать любому количеству каталогов в имени пути.
РЕДАКТИРОВАТЬ:
Только что заметил, что вы указали свой каталог как места/... и нет /места/.... Вы должны быть уверены, что первый параметр передан в найти это полный путь в каталог. В противном случае он просто вернет ошибку.
РЕДАКТИРОВАТЬ 2:
Пока исправлял вторую команду, понял, что та найти сама может делать то же, что и rm, но без дополнительных вызовов. Это должно сработать, но я бы все же не советовал делать это без предварительного запуска верхней версии, чтобы увидеть, что именно будет удалено. Команда
sudo find /sites -type f -name '*~' -delete
В качестве последнего совета, если вы используете найти много, и есть резервные копии системы, вы видите, что ваш вывод переполнен дубликатами. Если да, поищите -чернослив вариант. Он будет держать все, что соответствует связанному с ним аргументу, вне вывода.