Используя find
вероятно, лучший выбор. Некоторые проблемы с другими ответами или не удаляют все в каталоге или удаляют сам каталог. Можно или использовать ls
с xargs
, при отсутствии специальных символов, или find
с определенными опциями.
ls -1 | xargs rm -r
или
find . -depth -path ./.* -prune -o -not -name . -delete
Это проигнорирует что-либо в текущем каталоге, запускающемся с .
(-prune
) и удалит любой другой файл или каталог, пока это не главный каталог (.
). -depth
посмотрит в каталогах сначала, которые избегут 'каталога не пустая' ошибка. Если -not
аргумент не доступен в Вашей системе, затем используйте !
.
tar: home/elena/.gvfs: Cannot stat: Permission denied
Заметьте, что сообщение об ошибке не включает ведущую наклонную черту. Попробовать --exclude=home/elena/.gvfs
без наклонной черты.
tar
не допускает мелкомодульное управление на том, какие каталоги и файлы оказываются в архиве? – Elena 12.07.2013, 16:26find | grep - v stuff | xargs tar
или некоторое приближение этого. – tripleee 12.07.2013, 17:23--anchored
. Чем соответствовал бы начальной части пути даже без наклонной черты. – eppesuig 12.07.2013, 18:26