я пытаюсь удалить у гну/Linux все папки в другой папке, которые запускаются с a"." (точка), для этого я использую утилиту находки, это - то, что я имею:
find . -iname ^\..* -exec rm -rf {} \;
но это ничего не делает :(. Я уже тестируюсь регулярное выражение и работы хорошо. Какая-либо справка??
благодарность много в течение Вашего времени.
find
использование globbing синтаксис, и можно использовать -type d
найти просто каталоги:
find . -type d -name '.?*' | vim -
Необходимо быть чрезвычайно осторожными когда globbing или использующий regex для нахождения .hidden
файлы, поскольку можно довольно легко взять .
и удалите свою целую папку, или еще хуже, соответствие ..
и Вы удаляете свою целую родительскую папку. Рассмотрите последствия следующей команды:
/home/someuser bash$ rm -rf .*
-name
и -iname
используйте шарики, не regexs. Попробовать -regex
или -iregex
вместо этого.