2009-04-28 37 views
154

tôi chạy lệnh sau đây không thành công[nyae] có nghĩa là gì trong Zsh?

dir 

và tôi nhận được

zsh: correct 'dir' to 'gdir' [nyae]? 

không [nyae] có ý nghĩa gì trong Zsh?

+4

BTW: bạn có thể muốn alias 'dir' cho 'ls -l', sau đó zsh tự động sẽ không sửa được nữa và bạn sẽ có được kết quả mong đợi của bạn. – eckes

Trả lời

223

zsh có cơ chế điều chỉnh mạnh mẽ. Nếu bạn gõ một lệnh sai cách nó gợi ý sửa chữa. Điều thú vị ở đây là dir là một lệnh không xác định và zsh đề xuất gdir, trong khi có thể ls là những gì bạn muốn.

  1. Nếu bạn muốn thực hiện gdir nhấn y (yes)
  2. Nếu bạn muốn thử để thực hiện dir nào trúng n (không)
  3. Nếu bạn muốn thực hiện lệnh đánh vần hoàn toàn khác nhau như ls nhấn a (hủy bỏ) và nhập lệnh của bạn
  4. Nếu bạn muốn thực hiện một dấu phẩy được đánh vần tương tự như udir nhấn e (chỉnh sửa) và chỉnh sửa lệnh của bạn.
+6

Vâng, nó cho thấy sửa chữa nếu bạn đã 'setopt chính xác'. –

+3

Tôi có thể nói KHÔNG đúng để sửa thư không? –

+23

@CodingTales alias dir = 'nocorrect dir' –

33

Từ An Introduction to the Z Shell:

Nếu bạn nhấn y khi vỏ hỏi bạn có muốn sửa một từ, nó sẽ được sửa chữa. Nếu bạn nhấn n, nó sẽ bị bỏ lại một mình. Nhấn a hủy lệnh và nhấn e sẽ hiển thị lại dòng để chỉnh sửa lại, trong trường hợp bạn đồng ý với từ được viết sai, nhưng bạn không thích chỉnh sửa.

81

Một tham khảo nhanh:

$ dir 
zsh: correct 'dir' to 'gdir' [nyae]? 
  • n: n o - không chính xác; chạy dir, khi bạn nhập
  • y: y es - làm chính xác; chạy gdir, như Zsh gợi ý
  • a: một bort - không chạy bất cứ điều gì, và có được một nhắc nhở mới (gõ một lệnh hoàn toàn khác nhau)
  • e: e dit - chỉnh sửa những gì bạn đã gõ một cách tương tác - ví dụ, vì vậy bạn có thể thay đổi dir để udir
+12

Tôi dựa trên câu trả lời này của [lời giải thích của Ludwig] (http://stackoverflow.com/a/800196/578288), nhưng đã viết nó ở định dạng ngắn hơn. Định dạng này phù hợp hơn với những người đã đoán được cách hiệu chỉnh vỏ Z hoạt động, và chỉ muốn biết mỗi tùy chọn là gì. –