Bạn đã bỏ lỡ một ;ở cuối (và một khoảng trống giữa {}và ;). Lệnh đúng là:
find . -type f -name "IMAG1806.jpg" -exec rm -f {} \;
;cho biết kết thúc của -execvị ngữ của find.
Cũng lưu ý rằng chúng ta đã sử dụng \;tức là \ở phía trước ;để thoát khỏi việc giải thích ;bằng shell, nếu không shell sẽ coi ;là kết thúc của toàn bộ findlệnh và findsẽ đưa ra cùng một lỗi. Bạn cũng có thể sử dụng ';'thay vì \;.
Bạn đang sử dụng \ở cuối, điều này cho thấy trình bao của bạn sẽ tiếp tục nhận đầu vào thông qua PS2(được chỉ định bởi >), bạn đã nhập IMAG1806.jpglại, do đó toàn bộ lệnh trở thành:
find . -type f -name "IMAG1806.jpg" -exec rm -f {}IMAG1806.jpg
Như bạn có thể thấy đây không phải là một lệnh hợp lệ IMAG1806.jpgở cuối, không có biến -execvị ngữ và không có khoảng trắng giữa {}và \;.
rm "IMAG1806.jpg"? Nó nằm trong cùng một thư mục, vì vậy bạn biết nó được gọi là gì.