tìm lệnh dường như không hoạt động trong cygwin


10

Khi cố gắng chạy tìm lệnh trong cygwin, tôi liên tục gặp lỗi

"TÌM: Định dạng tham số không chính xác"

Tuy nhiên, các lệnh tương tự chạy trên linux. Chuyện gì đang xảy ra vậy?

Câu trả lời:


13

Bạn đang sử dụng lệnh Windows find, không phải của Cygwin.

Điều này được làm rõ nếu bạn gõ 'mà tìm'

Để khắc phục, hãy chỉnh sửa đường dẫn của bạn (Thuộc tính hệ thống -> Nâng cao -> Biến môi trường -> Biến hệ thống -> Đường dẫn) và di chuyển mục nhập cho cygwin ra phía trước đường dẫn. (Một cách dễ dàng để làm điều này là sao chép toàn bộ đường dẫn, dán nó vào Notepad chỉnh sửa nó ở đó và dán lại).

Như đã chỉ ra trong các bình luận, một lộ trình khác là chỉnh sửa các tập lệnh khởi động bash và thay đổi đường dẫn ở đó. Tôi thậm chí còn nói rằng đây là giải pháp ưa thích vì giờ đây tôi đã tìm thấy một trường hợp trong đó các phiên bản cygwins đầu tiên gây ra sự cố.


5
đây có thể không phải là sửa chữa lý tưởng; một cách khác là chỉnh sửa các tệp khởi động bash để thêm các đường dẫn Cygwin vào đường dẫn hệ thống thay vì nối thêm chúng. sự khác biệt chính là bạn có muốn các phiên bản Cygwin được tìm thấy đầu tiên hay không khi chạy các lệnh trong các vỏ Windows CMD hoặc Explorer tiêu chuẩn.
quack quixote

Cygwin đang chuẩn bị các con đường riêng của mình đến toàn cầu. Vì vậy, OP khá lạ của nó nhận được lỗi đó.
akira

Điểm quạc tốt!
dggoldst

2

Tôi không thể có được 'tìm' chính xác để chạy khi trong vỏ lệnh của windows và điều chỉnh PATH không giúp được gì. Nhưng điều này đã làm việc:

bash
/usr/bin/find . -iname blahblah*
exit

Đường dẫn rõ ràng đã kích hoạt quyền 'tìm' và vì bất kỳ lý do gì, chỉ hoạt động khi chạy trong bash.


Điều này làm việc tốt nhất cho tôi. Tôi đã tạo ra một kịch bản có thể chạy trên các máy khác nhau đã có bash. Một số có đường dẫn bash trước \ Windows \ System32, nhưng một số có đường dẫn sau. Ngoài ra, lệnh windows "where find" sẽ hiển thị cho bạn tất cả các "find" theo thứ tự đường dẫn.
PseudoNiri
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.