Подтвердить что ты не робот

Как найти все файлы с именем файла, которое заканчивается тильдой

Я использую Emacs, и иногда он делает резервную копию для отредактированных файлов. Через несколько дней у меня будет много резервных файлов, чье имя заканчивается тильдой.

Есть ли способ найти эти файлы и удалить их сразу?

Я пробовал это:

find "*" -type f -iname *~

Но это не сработает. Я хочу, чтобы команда работала рекурсивно – что-то вроде ls -alR.

4b9b3361

Ответ 1

Вам нужно убежать из оболочки. И вам нужно указать путь поиска, а не *

find . -type f -name '*~'

Чтобы удалить файлы:

find . -type f -name '*~' -exec rm -f '{}' \;

Ответ 2

Вы можете сделать что-то вроде этого:

find . -type f -name '*~' -delete

Если вы хотите удалить также # * # файл:

find . -type f -name '*~' -o -name '#*#' -delete

Вы можете распечатать все удаленные файлы с помощью "-print":

find . -type f -name '*~' -delete -print

Ответ 3

Другой способ - использование grep.

lnydex99uhc:javastuff user$ ls
Permutation.java VigenereCipher.java    VigenereCipher.java~

lnydex99uhc:javastuff user $ find . | grep .~$
./VigenereCipher.java~

Вы также можете передать любую команду, которая вам нужна:

lnydex99uhc:javastuff zatef$ rm $(find . | grep .~$)