Как безопасно удалить все файлы (включая скрытые) из текущего каталога (после 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
если вы хотите оставить структуру каталогов нетронутой.