Найти и удалить все временные файлы в каталоге пользователя

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

Мне нужен псевдоним команды rm который удаляет все файлы с .swp , ~ , .netrwhist , .log или .bak системе (или, по крайней мере, в моем домашнем каталоге) . Команда должна удалять файлы в системном / домашнем каталоге, даже когда я нахожусь на ~/Desktop .

Как я могу это реализовать?

3 Solutions collect form web for “Найти и удалить все временные файлы в каталоге пользователя”

Это приведет к удалению всех файлов с именем, заканчивающимся на .swp , ~ , .netrwhist , .log или .bak любом месте вашего домашнего каталога. Нет подсказок, нет подтверждения, нет восстановления, файлы ушли навсегда.

 find ~ -type f \( -name '*.swp' -o -name '*~' -o -name '*.bak' -o -name '.netrwhist' \) -delete 

(Я целенаправленно опускаю *.log потому что это звучит опасно, это не распространенное расширение для временных файлов, и есть много не временных файлов с этим именем.)

Если ваша ОС не является Linux, замените -delete на -exec rm {} + .

Возможно, вы должны настроить Vim, чтобы поместить свои файлы подкачки в один каталог, установив опцию directory :

 set dir=~/tmp/vim-swap-files//,/var/tmp// 

Сначала создайте каталог. // в конце делает имя файла подкачки включать расположение каталога исходного файла, так что файлы с тем же именем в разных каталогах не приводят к сбою.

Вы можете сделать то же самое для файлов резервных копий с опцией backupdir , хотя это делает намного меньше смысла.

Если вы используете Emacs, установите auto-save-file-name-transforms чтобы указать каждый файл в один каталог.

 (setq auto-save-file-name-transforms '("\\`.*\\'" "~/tmp/emacs-auto-save-files/\\&" t)) 

Если вы специально нацеливаете файлы vim, я бы рекомендовал вам использовать переменную backupdir . :h backupdir говорит:

 'backupdir' 'bdir' string (default for Amiga: ".,t:", for MS-DOS and Win32: ".,c:/tmp,c:/temp" for Unix: ".,~/tmp,~/") global {not in Vi} List of directories for the backup file, separated with commas. - The backup file will be created in the first directory in the list where this is possible. The directory must exist, Vim will not create it for you. [... snip ...] 

Я использую эту строку в моем .vimrc:

set backupdir=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp

Также вам нужно создать каталог ~ / .vim-tmp, если он уже не существует, потому что это не создает для вас.

Short Answer Удаляет временные интервалы, которые заканчиваются на ~

 find . -type f \( -iname "*~" \) -delete 

Или другие, такие как .swap и т. Д.

 find . -type f \( -iname "*.swp" \) -delete 
  • Не удается (принудительно) удалить каталог в сборке Docker
  • Возможность удалять файл без разрешения
  • Удалить файлы .pdf, только если файлы .xlsx в каталоге имеют одинаковые имена файлов?
  • Удалите все файлы, за исключением последнего файла каждого месяца
  • Не может rm-файл, потому что он не существует?
  • Каковы каталоги .Trash-500 и .Trash-1000?
  • Не удается удалить каталог, операция не поддерживается в NTFS
  • Интерактивное удаление файлов из списка
  • Что произойдет, если rm остановлено на полпути через подсказки?
  • Удалите папку с тем же именем, что и переменная среды
  • Помощь с сортировкой после запуска rm -rf / * в качестве пользователя без root
  • Interesting Posts

    Использование многих мониторов (4+) в Linux

    Захват слов в двойных кавычках

    Невозможно завершить процесс с PID 1 в контейнере Docker

    vim – Храните резервную копию перед каждой записью

    Как отредактировать / удалить .dot_file на Mac без использования терминала

    Удаление привилегий supend и hibernate

    Как использовать tail -f с grep для отображения окружающих линий

    Включить предыдущую циклическую команду в командной строке ftp

    Совместное использование локального каталога между локальными пользователями с полными разрешениями

    Как работает почтовая команда?

    Как переименовать файл с помощью подстроки с тем же именем

    Как работает создание нового файла USB-устройства в каталоге / dev / bus / usb / 001 /?

    Как изменить языковой интерфейс в Xfce?

    Вложенные папки Untar с содержимым начальной папки в linux

    Почему «никто» не называется «самым привилегированным пользователем после root»?

    Linux и Unix - лучшая ОС в мире.