Как удалить все скрытые файлы и каталоги с помощью Bash?

Сообщение происходит из их конца как 553 ответа от их почтового сервера. Удаленному серверу, вероятно, установили учетную запись, чтобы смочь получить почту от локальных пользователей только и не сообщений из Интернета. Если они захотят, чтобы этот пользователь получил почту от внешней стороны, то они должны будут обновить настройки учетной записи на своем конце.

27
задан 1 August 2009 в 10:33
4 ответа
rm -rf .[^.] .??*

Должен поймать все случаи.?? * будет только соответствовать 3 + символьные имена файлов (как объяснено в предыдущем ответе). [^]. поймает любые два ввода символов (кроме..).

33
ответ дан 28 November 2019 в 20:06
  • 1
    Спасибо за ответ! На основе его я также добрался до более короткой версии " комната-rf. [^.]*". –  Yonatan Broza 2 August 2009 в 22:00
  • 2
    Будьте осторожны с той более короткой версией, она даст подобный, но не идентичные результаты. Это won' t соответствуют именам двум точкам в передней стороне (например, ".../" который иногда замечается скрывающиеся руткиты, и т.д.), –  Russell Heilling 3 August 2009 в 15:29

лучший способ, вероятно:

  • найти.-iname.*-maxdepth 1 - тип f - исполнительная комната {} \;

комната изменения к ls-l, если бы Вы просто хотите видеть то, что было бы удалено к подробному вывод u, может хотеть добавить-v опцию к комнате

  • - опции типа f говорят, находят, что команда только ищет файлы (опустите директоров, ссылки и т.д.),
  • - maxdepth 1 говорит, находят для не снижения до подкаталогов

PS не забывает об окончании '\';

0
ответ дан 28 November 2019 в 20:06
find -path './.*' -delete

Это соответствует всем файлам в текущем каталоге, которые начинаются с . и удаляет их рекурсивно. Скрытые файлы в не скрытых каталогах не затрагиваются.

Если вы действительно хотите стереть все из каталога, достаточно find -delete .

1
ответ дан 28 November 2019 в 20:06
ls -la | awk '$NF ~ /^\.[^.]+/  {print $NF}' | xargs rm -rf

ls -la ............. long list (all files and folders)
$NF ................ last field (file or folder name)
~   ................ Regular Expression match
/^\.[^.]+/ ......... dot followed by not dot at least once +

If the last field $NF match pattern show it and send 
it to xargs which will perform the task.
-1
ответ дан 28 November 2019 в 20:06

Теги

Похожие вопросы