Я использую программу hazel для очистки папки загрузок каждый раз, когда загружается файл. Теперь я говорю ей запускать скрипт оболочки каждую неделю, чтобы удалить каждую папку в папке загрузок, а затем создать ее заново.
Есть ли более простой способ сделать это (удаление папок/создание папок заново), повторно пройдя по каждой папке в папке «Загрузки» и удалив ее содержимое?
cd ~/Downloads;
rm -rf Archives;
rm -rf DMGs;
rm -rf Documents;
rm -rf Fonts;
rm -rf Mail\ Attachments;
rm -rf Mobile\ Provisioning;
rm -rf Music;
rm -rf Photoshop;
rm -rf Pictures;
rm -rf Videos;
mkdir Archives;
mkdir DMGs;
mkdir Documents;
mkdir Archives;
mkdir Fonts;
mkdir Mobile\ Provisioning;
mkdir Mail\ Attachments;
mkdir Music;
mkdir Photoshop;
mkdir Pictures;
mkdir Videos;
решение1
Как насчет:
cd ~/Downloads && rm -rf */*
Или я что-то упускаю?
Примечание: это не приведет к удалению скрытых файлов/каталогов, расположенных непосредственно под верхним уровнем.
решение2
Если вы хотите удалить файлы, оставив при этом всю структуру папок нетронутой, используйте
find . -type f -print -exec rm '{}' ';'
Если вам нужна только структура папок верхнего уровня, rm -rf */*
как предлагали другие, это хорошо
решение3
На самом деле это довольно просто, вот что нужно сделать:rm -rf */*
решение4
Вы также можете запустить:
find ~/Downloads -type f -exec rm {} \;
Это приведет к удалению всех файлов в этом каталоге.
Замените rm {} \;
на ls -l {} \;
перед реальным запуском, чтобы проверить, все ли в порядке, прежде чем удалять файлы.