За исключением определенных расширений файлов. (удаление мусора, отличного от файлов субтитров из видеокаталога)
здесь:
find . -type f -name *.bak -size -20M -exec rm {} \;
с -name *.bak вы ищете файлы с расширением «bak», -type f ищет файлы (не каталоги), -size -20M дает вам все файлы меньше чем 20 МБ (-size +20M для обратного поиска файлов размером более 20 МБ), а с -exec вы удаляете результаты этого поиска.
Сначала запустите
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print0 | xargs -0 /bin/rm -f
и запустите ее. Он должен делать то, что вы хотите. Вы можете повторить ! -name '*.srt' часть больше раз, если вам нужно исключить больше файлов. Будьте осторожны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки с расширением.
find . -type f ! -name '*.ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find . -type f ! -name '*.ext' -size -20M
здесь:
find . -type f -name *.bak -size -20M -exec rm {} \;
с -name *.bak вы ищете файлы с расширением «bak», -type f ищет файлы (не каталоги), -size -20M дает вам все файлы меньше чем 20 МБ (-size +20M для обратного поиска файлов размером более 20 МБ), а с -exec вы удаляете результаты этого поиска.
Сначала запустите
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print0 | xargs -0 /bin/rm -f
и запустите ее. Он должен делать то, что вы хотите. Вы можете повторить ! -name '*.srt' часть больше раз, если вам нужно исключить больше файлов. Будьте осторожны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки с расширением.
find . -type f ! -name '*.ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find . -type f ! -name '*.ext' -size -20M
здесь:
find . -type f -name *.bak -size -20M -exec rm {} \;
с -name *.bak вы ищете файлы с расширением «bak», -type f ищет файлы (не каталоги), -size -20M дает вам все файлы меньше чем 20 МБ (-size +20M для обратного поиска файлов размером более 20 МБ), а с -exec вы удаляете результаты этого поиска.
Сначала запустите
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print0 | xargs -0 /bin/rm -f
и запустите ее. Он должен делать то, что вы хотите. Вы можете повторить ! -name '*.srt' часть больше раз, если вам нужно исключить больше файлов. Будьте осторожны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки с расширением.
find . -type f ! -name '*.ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find . -type f ! -name '*.ext' -size -20M
здесь:
find . -type f -name *.bak -size -20M -exec rm {} \;
с -name *.bak вы ищете файлы с расширением «bak», -type f ищет файлы (не каталоги), -size -20M дает вам все файлы меньше чем 20 МБ (-size +20M для обратного поиска файлов размером более 20 МБ), а с -exec вы удаляете результаты этого поиска.
Сначала запустите
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find . -type f ! -name '*.sub' ! -name '*.srt' -size -20M -print0 | xargs -0 /bin/rm -f
и запустите ее. Он должен делать то, что вы хотите. Вы можете повторить ! -name '*.srt' часть больше раз, если вам нужно исключить больше файлов. Будьте осторожны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки с расширением.
find . -type f ! -name '*.ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find . -type f ! -name '*.ext' -size -20M
здесь:
find. -type f -name * .bak -size -20M -exec rm {} \;
с -name * .bak
вы ищете файлы с расширением «bak», -type f
ищет файлы ( не каталоги), -size -20M
дает вам все файлы размером менее 20 МБ ( -size + 20M
для обратного поиска файлов размером более 20 МБ) и с -exec
вы удаляете результаты этого поиска.
find. Тип f! -name '* .ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find. Тип f! -name '* .ext' -size -20M
Сначала запустите
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print0 | xargs -0 / bin / rm -f
и запустите его. Он должен делать то, что вы хотите. Вы можете повторить ! -name '* .srt'
больше, если вам нужно исключить больше файлов. Будьте внимательны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки.
find. Тип f! -name '* .ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find. Тип f! -name '* .ext' -size -20M
Сначала запустите
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print0 | xargs -0 / bin / rm -f
и запустите его. Он должен делать то, что вы хотите. Вы можете повторить ! -name '* .srt'
больше, если вам нужно исключить больше файлов. Будьте внимательны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки.
здесь:
find. -type f -name * .bak -size -20M -exec rm {} \;
с -name * .bak
вы ищете файлы с расширением «bak», -type f
ищет файлы ( не каталоги), -size -20M
дает вам все файлы размером менее 20 МБ ( -size + 20M
для обратного поиска файлов размером более 20 МБ) и с -exec
вы удаляете результаты этого поиска.
find. Тип f! -name '* .ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find. Тип f! -name '* .ext' -size -20M
здесь:
find. -type f -name * .bak -size -20M -exec rm {} \;
с -name * .bak
вы ищете файлы с расширением «bak», -type f
ищет файлы ( не каталоги), -size -20M
дает вам все файлы размером менее 20 МБ ( -size + 20M
для обратного поиска файлов размером более 20 МБ) и с -exec
вы удаляете результаты этого поиска.
Сначала запустите
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print0 | xargs -0 / bin / rm -f
и запустите его. Он должен делать то, что вы хотите. Вы можете повторить ! -name '* .srt'
больше, если вам нужно исключить больше файлов. Будьте внимательны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки.
find. Тип f! -name '* .ext' -size -20M -delete
легче вводить и запоминать, чем что-либо еще. Вы должны помнить, что -delete зависит от позиции и удаляет без дальнейшего уведомления и trashcan.
Просто будьте осторожны, часто выполняйте резервное копирование и проверяйте перед удалением:
find. Тип f! -name '* .ext' -size -20M
здесь:
find. -type f -name * .bak -size -20M -exec rm {} \;
с -name * .bak
вы ищете файлы с расширением «bak», -type f
ищет файлы ( не каталоги), -size -20M
дает вам все файлы размером менее 20 МБ ( -size + 20M
для обратного поиска файлов размером более 20 МБ) и с -exec
вы удаляете результаты этого поиска.
& quot ;, bak & quot;
, а не {}. И вместо -exec rm {} \;
вы можете просто использовать -delete
. И вопрос был not для удаления файлов некоторого расширения.
– user unknown
20 March 2011 в 03:41
Сначала запустите
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print
, чтобы убедиться, что он сжимает только те типы файлов, которые вы хотите. Я долгое время unix-пользователь, и я всегда делаю это, прежде чем просить любую команду удалять что-либо (опечатки всегда происходят в самое худшее время). Затем отредактируйте предыдущую командную строку, чтобы стать
find. Тип f! -name '* .sub'! -name '* .srt' -size -20M -print0 | xargs -0 / bin / rm -f
и запустите его. Он должен делать то, что вы хотите. Вы можете повторить ! -name '* .srt'
больше, если вам нужно исключить больше файлов. Будьте внимательны, чтобы включить одинарные кавычки: они важны, чтобы предотвратить расширение оболочки.
-exec rm {} \;
или -delete
чище, чем трубопровод через xargs
– Oli♦
4 November 2010 в 02:22
-delete
или -exec rm '{}' \;
более подвержено ошибкам, чем использование xargs -0
: -delete
зависит от положения, поэтому вы можете случайно удалить больше, чем вы планировали, и -exec rm '{}' \;
не указывает, как он относится к необычным именам файлов.
– Li Lo
4 November 2010 в 03:08
find
лучше всего лишить любого действия, кроме -print0
. Он в одиночку ломает большинство принципов Unix «делайте одно, делайте это хорошо, взаимодействуйте с другими программами». (Да, я знаю, сколько устаревших скриптов зависит от -exec
, поэтому я рекомендую людям делать вид i>, что их не существует)
– msw
4 November 2010 в 07:12