Похожие вопросы

Добавление пользовательских строк в файл с помощью shell-скрипт
команда баш на Mac терминал не работает
Bash генерировать отформатированную дату за последние 6 месяцев
Использование wget для рекурсивного обхода сайта и загрузки изображений
Shell-скрипт, чтобы передать аргументы в другой скрипт
Настройка $PATH в /etc / profile не влияет на root
Записать импортируемый массив в файл в Bash?
Поиск уникальных файлов на 2 дисках
Как установить переменные среды в GitLab CI docker runner?
Как изменить цветовую схему в bash в Ubuntu для Windows?
Использование find или grep для поиска имен файлов с акцентированными символами из другой системы кодирования (Windows в Linux)
Скрипт действует по-разному при запуске cron
Как остановить терминал bash от добавления частей предыдущих команд в текущую строку?
Wget loop bash с нумерацией загрузок?
Linux ip route: как сделать так, чтобы весь внешний трафик шел через один интерфейс

Проблема с find: недопустимый предикат "- delete"

Я пытаюсь запустить (unix-shell, win7):

find . -maxdepth 1 -name "*.jpg" -size -50k -delete

и получаю ошибку:

find: invalid predicate '-delete'

какие-то намеки?

5
задан suspectus
источник

2 ответов

Вы можете найти xargs полезно не только в операциях поиска и удаления, но и в других случаях, когда может потребоваться обработать текст после выполнения команды. В этом случае

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs rm -f

всегда убедитесь, что вы сначала проверяете свою работу с "Эхом" перед xargs (чтобы вы могли видеть, как выглядят команды, прежде чем запускать их). Который будет выглядеть так:

find . -maxdepth 1 -name "*.jpg" -size -50k | xargs echo rm -f
5
отвечен dougBTV 2013-05-08 14:02:45
источник

версия find найдено из оболочки unix вы работаете (из windows) не хватает -delete сказуемое.

возможная альтернатива -:

find . -maxdepth 1 -name "*.jpg" -size -50k -exec rm {} \;
4
отвечен suspectus 2013-05-07 20:40:58
источник

Другие вопросы bash shell unix windows-7