Я получаю сообщение об ошибке find: missing argument to -exec'` при попытке запустить команду

find . -maxdepth 1 \( -iname \*.png -o -iname \*.jpg \) -exec echo {} \; 

Причина, по которой я использую echo заключается в том, что я хочу убедиться, что он возвращает ожидаемые результаты, прежде чем заменить его на rm или mv . Что я делаю неправильно?

2 ответа2

1

Вам не нужен -exec... вообще. Просто запустите команду без нее, и вы увидите, что она нашла.

Если это выглядит приемлемо, добавьте -delete в конец, чтобы удалить файлы.

1

Очевидно, проблема заключалась в том, что я использовал : в моем распоряжении, а не в ; , Я заметил, что когда я повторил упражнение, прочитав пример в разделе Почему -exec может повлиять на результаты поиска в Linux? ,

Пример, который я выложил, хотя реальный был напечатан, а не скопирован и вставлен.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .