2012-03-22 25 views
9

Tôi muốn tìm tất cả các tệp/dir không bằng .git*, vì vậy tôi đã thử các lệnh sau, nhưng nó có tác dụng ngược lại (nó in đường dẫn có chứa .git).tìm tệp không bằng mẫu

$ find . ! -name "*.git" 
$ find . ! -name ".*.git" 
$ find . ! -name "*.git*" 
$ find . ! -regex "*.git" 
$ find . ! \(-name "*.git*" \) 

Tôi cũng đã thử các lệnh trên với lối thoát \!, như trong find . \! -name "*.git".

Q: Cú pháp chính xác cho find "không bằng" là gì?

+0

@casperOne, Tại sao câu hỏi này được coi là không có chủ đề (và bỏ phiếu) trong khi các câu hỏi tương tự được liệt kê bên dưới hợp lệ? * [Làm cách nào để chỉnh sửa thông báo thẻ hiện tại trong git?] (Http://stackoverflow.com/questions/7813194/how-do-i-edit-an-existing-tag-message-in-git) * [Sử dụng đường ống của các lệnh làm đối số cho diff] (http://stackoverflow.com/questions/9847479/use-pipe-of-commands-as-argument-for-diff) * [Linux tìm lệnh gotcha?] (http://stackoverflow.com/questions/2591158/linux-find-command-gotcha) – user46874

Trả lời

13

Aha! Tôi tìm thấy ở đây:

$ find . ! -path "*.git*" 
Các vấn đề liên quan