Как безопасно удалить все файлы (включая скрытые) из текущего каталога (после перехода в этот каталог)?

Как безопасно удалить все файлы (включая скрытые) из текущего каталога (после перехода в этот каталог)?

Как безопасно удалить все файлы (включая скрытые) из текущего каталога (после cdперехода в этот каталог)?

Насколько мне известно, cd RELEVANT_DIR && rm *скрытые файлы не удаляются.

Я предполагаю, cd RELEVANT_DIR && rm -rf ./*что это правильная команда, но я могу ошибаться.

Обновлять

Я также хочу удалить каталоги (и возможные символические ссылки, и в принципе все в каталоге).

решение1

Поскольку вы упомянули об этом, rm -rf *я предполагаю, что вы имеете в виду не просто удаление файлов, но и удаление всего содержимого, включая каталоги.

Сbash

cd "RELEVANT_DIR" && ( shopt -s dotglob; rm -r * )

В противном случае сPOSIXинструменты

cd "RELEVANT_DIR" && (
    find . ! -type d -delete
    find . -depth -path './*' -type d -exec rmdir {} +
)

В этом примере опустите второй параметр, findесли вы хотите оставить структуру каталогов нетронутой.

Связанный контент