Làm thế nào để sử dụng tab Cmd tự động hoàn thành một cách hiệu quả?


45

Tôi đã sử dụng shell Bash trên Linux trong nhiều năm và tôi rất nhanh với nó. Bằng cách thường xuyên kêu gọi tự động hoàn tất bằng cách nhấn phím tab, tôi có thể viết các lệnh dài trong vài lần nhấn phím.

Gần đây trong công việc của tôi, tôi đã bắt đầu sử dụng Windows Command Prompt và Cmd. Tôi rất chậm trong Cmd. Nó có một tính năng tự động hoàn thành, nhưng nó hoạt động khác nhau. Tôi nghĩ rằng tôi hiểu cách thức hoạt động của nó, nhưng tôi không hiểu làm thế nào để sử dụng nó một cách hiệu quả, thực tế nó thường làm tôi chậm lại. Vậy tôi xin hỏi, làm thế nào để sử dụng cách tự động hoàn thành của Cmd một cách hiệu quả?


Để tôi lấy một ví dụ. Đầu tiên tôi sẽ mô tả cách tôi sử dụng Bash, sau đó là cách tôi cố gắng sử dụng Cmd và điều gì sai.

Giả sử các thư mục trong thư mục hiện tại có tên được tạo từ lục địa và quốc gia, vd. africa-nigeria, asia-india, europe-france, Và rằng tôi muốn vào thư mục thay đổi europe-norway.

Cách thức tự động hoàn thành của Bash là phím tab chỉ mở rộng nếu có một bản mở rộng duy nhất. Mặt khác, không có gì xảy ra, nhưng bạn có thể nhấn tab lần thứ hai để liệt kê các mở rộng có thể.

Vì vậy, để chuyển đến Na Uy ở Bash, tôi gõ cdvà sau đó thực hiện các thao tác bàn phím sau:

  1. e tab cho europe-
  2. n tab (chẳng có gì xảy ra)
  3. tablần nữa. Nó liệt kê europe-netherlandseurope-norwaynhư mở rộng tiềm năng.
  4. o tabcho europe-norway.

Tuyệt quá! Cảm ơn Bash.

Tuy nhiên, khi tôi thử các khóa tương tự trong Cmd, nó sẽ mở rộng e tabra europe-albania, đây là thư mục đầu tiên bắt đầu 'e', ​​nhưng không phải là thư mục tôi muốn! Tôi nên làm gì bây giờ để có thể biến Albania thành Na Uy? Hoặc tôi phải hủy lệnh với Escapevà gõ mọi thứ từ đầu?


Bạn có thể sử dụng một menu, ví dụ. thực đơn hàng loạt?
Endoro

Hiện tại câu trả lời của Stephan là chính xác cho bạn. Chỉ cần gõ cd evà sau đó nhấn TABphím. Những gì Windows đang làm ở đây, nó bắt đầu sắp xếp các thư mục theo thứ tự bảng chữ cái trong các từ. Vì nếu có Europe-albaniatrước đó europe-norway, chỉ cần tiếp tục nhấn TABphím cho đến khi bạn không nhận được thư mục mong muốn.
avirk

5
@Avirk, vậy cách nhanh nhất từ ​​Albania đến Na Uy là nhấn phím tab 27 lần?
Đại tá Panic

Câu trả lời:


47

Cập nhật 1 năm : Tôi đi đến kết luận rằng tự động hoàn thành của Cmd là không thể sử dụng được và đã ngừng sử dụng nó.

Tôi đã cài đặt Clink cung cấp cho bạn tính năng tự động hoàn thành kiểu Bash trong Cmd.

Clink kết hợp cmd.exe shell Windows gốc với các tính năng chỉnh sửa dòng lệnh mạnh mẽ của thư viện GNU Readline, cung cấp khả năng hoàn thành, lịch sử và chỉnh sửa dòng phong phú

Thật tuyệt vời.


Thật là một phát hiện tuyệt vời!
ysap

Vâng, Clink là tốt nhất cho việc này. Tôi sử dụng Clink và Git cho Windows để cung cấp một lựa chọn cmd tốt hơn.
Matt

Không giống như bash shell, điều này không tự động hoàn thành tên tệp.
Yashbhatt

15

Cygwin sẽ cho phép bạn chạy shell Bash (ngoài nhiều phần mềm môi trường POSIX khác) trong Windows.

Mặt khác, bạn có thể thử một lớp vỏ thay thế, thay vì Dấu nhắc lệnh cổ xưa, để tìm một lớp vỏ phù hợp nhất với nhu cầu của bạn.

Dưới đây là danh sách một số máy chơi game mô phỏng bash trên Windows:

win-bash
Road Bash
Git Bash được mô tả trong bài viết này

Bảng điều khiển khác:

Windows PowerShell của Microsoft và bài viết trên wikipedia của nó (mạnh nhất)
Bảng điều khiển với bài viết
ColorConsole
PowerCmd
GS.EXE
PyCmd

[ EDIT ] Kể từ đó, tôi đã phát hiện ra Cmder , một công cụ thay thế bảng điều khiển dạng bảng tuyệt vời cũng mang lại nhiều hành vi vỏ Linux cũng như một cổng của nhiều ứng dụng xử lý tệp Linux như grep.


3
+1. Cmd luôn là một cái cớ thảm hại cho một cái vỏ và Microsoft từ lâu đã từ bỏ bất kỳ sự phát triển nào của nó. Vì bạn đã thực hiện bash, tùy chọn tốt nhất của bạn sẽ là tiếp tục sử dụng nó bằng cách cài đặt Cygwin.
Andrew Schulman

1
tất nhiên, PowerShell là thứ tốt nhất trong danh sách đó;)
Taylor Gibb

Để hoàn thành danh sách hơn một chút: Có cũng là 4DOShoặc tốt hơn 4NT, cả hai khá phổ biến trong thời gian trước đây và nhiều hơn nữa mạnh mẽ hơn command.comhoặc cmd.exe. Có vẻ như Take Command( jpsoft.com/take-command-windows-scripting.html ) là người kế vị của họ. Tuy nhiên tôi không bao giờ sử dụng cá nhân đó (và nó thương mại).
mpy

1
Trên Win7 của tôi, Tự động hoàn thành của PowerShell (sử dụng TAB) (mis) hoạt động giống như trong CMD.
ysap

11

Nhấn TABphím bật thông qua tất cả các thư mục tồn tại.

Hãy thử nhập chỉ cdsau đó TABmột vài lần và bạn sẽ thấy nguyên tắc.

cd countries/europe-s[TAB][TAB] 

ví dụ sẽ đưa bạn đến trận đấu thứ hai (quốc gia / châu Âu-serbia)


4

Bash trong linux cố gắng khớp và tự động điền tất cả các ký tự đầu tiên phổ biến cho tất cả các tệp.

Mặt khác, dấu nhắc lệnh của windows chỉ tự động điền dấu nhắc lệnh với phần tử đầu tiên khớp.

ví dụ: Trong linux bash: Sau khi nhập các quốc gia cd \ e TAB, bash sẽ chuyển sang các quốc gia \ europe- vì nó khớp với tất cả các tên tệp bắt đầu bằng e, sau đó bạn có thể nhập một vài ký tự tiếp theo và nhấn TABlại.

Trong dấu nhắc lệnh của Windows: Sau khi nhập cd country \ e TAB, dấu nhắc lệnh sẽ khớp với tên tệp có thể đầu tiên bắt đầu bằng e, europe-alax trong trường hợp của bạn, nhưng nó vẫn nhớ rằng bạn chỉ nhập 'e'. Vì vậy, nếu bạn nhấn TABmột lần nữa, nó sẽ hiển thị trận đấu tiếp theo có thể (thứ tự bảng chữ cái), châu Âu-andorra.

Nếu bạn muốn đến châu Âu nhanh hơn, bạn có thể:

  1. Nhập europe-no và sau đó nhấn TABhoặc
  2. Nhập e và sau đó tiếp tục nhấn TABcho đến khi nó hiển thị châu Âu-norway

2

Cập nhật: Git Bash là khá nhiều tất cả những gì tôi cần

Sử dụng PowerShell ISE thay vì chỉ powershell. Điều này cho phép bạn truy cập vào tự động hoàn thành intelliSense, giúp sinh ra một danh sách các tùy chọn khi nhập hoặc Ctrl+ Space. ISE cũng mở ra rất nhiều khả năng thú vị khác như hoàn thành tab và những thứ khác.

Nhược điểm là, nó không hỗ trợ các ứng dụng tương tác như ssh hoặc python shell.

Tôi thực sự đã bắt đầu sử dụng ConEmu ngày hôm nay vì nhược điểm này. ConEmu khá tuyệt.

Môi trường tập lệnh tích hợp Windows PowerShell (ISE) là một trong hai máy chủ lưu trữ cho ngôn ngữ và công cụ Windows PowerShell. Với nó, bạn có thể viết, chạy và kiểm tra các tập lệnh theo những cách không có trong Bảng điều khiển Windows PowerShell. ISE thêm màu cú pháp, hoàn thành tab, IntelliSense, gỡ lỗi trực quan và Trợ giúp theo ngữ cảnh.

ISE cho phép bạn chạy các lệnh trong khung điều khiển, nhưng nó cũng hỗ trợ các khung mà bạn có thể sử dụng để xem đồng thời mã nguồn của tập lệnh và các công cụ khác có thể cắm vào ISE. Bạn thậm chí có thể mở nhiều cửa sổ tập lệnh cùng một lúc, điều này đặc biệt hữu ích khi bạn gỡ lỗi một tập lệnh sử dụng các hàm được xác định trong các tập lệnh hoặc mô-đun khác.

https://technet.microsoft.com/en-us/l Library / dd819514.aspx



1

Giữ Tabphím để di chuyển về phía trước thông qua các tùy chọn và Shift+ Tabđể quay lại.

Right arrow →khóa sẽ sao chép 1 ký tự cmdline cuối cùng tại một thời điểm. Tôi thấy rằng hữu ích khi đổi tên tập tin.

ví dụ:

ren file.1.mp4 Guitar.Licks.01.Pentatonic.2.notes.per.string.mp4

Giữ right arrow →cho đến 1, sau đó gõ 2. Giữ mũi tên phải cho đến 1, sau đó gõ 2. Giữ mũi tên phải cho đến 2, sau đó gõ 3, giữ mũi tên phải cho đến khi kết thúc. Kết quả sẽ là ...

ren file.2.mp4 Guitar.licks.02.Pentatonic.3.notes.per.string.mp4

Thủ thuật mũi tên bên phải rất tuyệt, nhưng thật không may, nó không hoạt động Ctrl+Tabvà tôi không bao giờ nhấn phím đó chỉ để đi đến cuối dòng. Nhấn mũi tên lên sau đó Homehoặc Ctrl+Tabđể sửa một vài ký tự sẽ nhanh hơn nhiều
phuclv

1

Trong Windows 10, tên tệp và hoàn thành tên thư mục có thể sử dụng ký tự đại diện.

Đối với ví dụ về việc đổi sang châu Âu-norway, một trong hai lệnh này sẽ hoạt động:

cd *nor*<tab>

hoặc là

cd *way<tab>

Bạn có thể sử dụng nhiều '*' s, và có không một tiềm ẩn ở đầu hoặc cuối '*'.


1

Khá đơn giản bằng cách sử dụng regedit:

1) Bắt đầu -> Chạy -> regedit 2) Chuyển qua các mục sau cho người dùng hiện tại hoặc tất cả người dùng của hệ thống,

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Bộ xử lý lệnh HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Bộ xử lý lệnh

3) Nhấp đúp chuột vào bộ xử lý lệnh và thay đổi giá trị thành "9" ở dạng thập phân hoặc "0x9" ở dạng hex. 4) Điều này sẽ cho phép TAB tự động hoàn thành.

Mở lại dấu nhắc lệnh của bạn và thử nó.


0

Trong windows 10 (7?), Sử dụng shift + tab để chuyển qua các tùy chọn tự động hoàn thành có sẵn với một đường dẫn một phần.

Khi được gọi không có gì, nó sẽ chuyển qua tất cả các tùy chọn có sẵn trong thư mục.


1
Đây không có gì, Shift+Tabchỉ là đảo ngược thứ tự iterating , chỉ giống như thêm chuyển sang bất kỳ phím tắt chuyển mạch khác như Ctrl+Tab, Win+Tab, Alt+Tab, Ctrk+K... Với Tab một mình bạn cũng sẽ lướt qua tất cả các tùy chọn có sẵn trong thư mục
phuclv
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.