Làm thế nào để có một cái nhìn tốt hơn khi gõ các thư mục trong thiết bị đầu cuối?


8

Tôi hiện đang sử dụng máy Mac và học cách sử dụng thiết bị đầu cuối, nhưng câu hỏi cũng áp dụng cho các hệ thống Linux.

Tôi muốn hỏi, khi gõ các đường dẫn trong dòng lệnh / terminal, có cách nào trong terminal để có một cái nhìn tốt hơn về các thư mục không?

Ví dụ, tôi muốn cd vào một thư mục cụ thể. Khi tôi bắt đầu nhập địa chỉ, có cách nào để cơ bản ls ở mỗi thư mục không? Nếu ví dụ tôi muốn sao chép một tập tin từ thư mục này sang thư mục khác và muốn gõ 2 đường dẫn tuyệt đối, tôi có cần ghi nhớ 2 đường dẫn không? Tôi biết rằng việc nhấn Tab sẽ giúp tự động hoàn tất, nhưng nếu tôi không biết chữ cái đầu tiên thì sao?

Ngay bây giờ tôi dựa vào việc sử dụng Finder cho điều đó, nhưng tôi tưởng tượng những người sử dụng thiết bị đầu cuối độc quyền có cách tốt hơn.

Cảm ơn !

Câu trả lời:


9

Tabchính xác là những gì bạn cần. Nếu bạn nhấn tabhai lần, nó sẽ hiển thị cho bạn tất cả các lần hoàn thành có thể:

$ cd /usr/  ## Hit tab twice here
bin/     include/ lib64/   sbin/    src/     
games/   lib/     local/   share/   var/     

Bạn không cần biết chữ cái đầu tiên, lá thư thứ hai tabsẽ chỉ cho bạn mọi thứ.


Tab <kbd> </ kbd> cũng áp dụng cho dòng lệnh Windows.
Hind-D

Và bash / zsh ít nhất trên linux
linuxdev2013

5

Một số từ thêm về Tab

Tablà tuyệt vời để hoàn thành một lệnh bằng văn bản một phần (hoặc một tùy chọn) trong số những lệnh có sẵn như Terdon đã gạch chân trong một câu trả lời khác .

Để hoàn thành một lệnh là đủ để nhấnTab một lần. Để có danh sách đầy đủ nhấnTab một lần nữa.
Hơn nữa, bạn có thể muốn tùy chỉnh hành vi củaTab . Hãy thử ví dụ 2 dòng đó:

bind "TAB:menu-complete"
bind "set show-all-if-ambiguous on"

Lần đầu tiên Tabcho bạn thấy tất cả các khả năng và tự động hoàn thành lệnh với lệnh đầu tiên khả dụng, từ lần thứ hai bạn nhấn, Tab nó sẽ bắt đầu quay vòng giữa chúng.

Ghi chú:

Bạn có thể viết các tập lệnh hoàn thành bash của riêng bạn , với các tùy chọn quy tắc ...
Có nhiều hơn một số gợi ý trong bài viết Giới thiệu về hoàn thành bash : phần 1 dành cho các cơ sở và phần thứ hai để viết tập lệnh của riêng bạn.

Bạn có thể tìm thấy thú vị bind completevà các tài liệu tham khảo ở đây dưới đây.

Câu trả lời thứ 2: Đường dẫn và phím tắt tuyệt đối

Không phải lúc nào cũng bắt buộc phải viết đường dẫn tuyệt đối (đầy đủ) trong mỗi lệnh ngay cả khi đó là một cách thực hành tốt khi bạn viết một tập lệnh và bạn muốn tránh nguy cơ khai thác như ngựa trojan .

Có một số phím tắt để đi nhanh hơn như, ví dụ, Tab, , , và tất cả các biến được định nghĩa trong vỏ hiện hành. Alt+..~

Dưới đây là một số ví dụ ( .có nghĩa là ở đây~có nghĩa là nhà ):

Để sao chép một tệp vào thư mục hiện tại là đủ để ghi Để sao chép từ thư mục của bạn một tệp vào thư mục hiện tại, bạn có thể viết Để sao chép một tệp từ thư mục hiện tại sang thư mục cuối cùng ghi đối số cuối cùng của lệnh cuối cùng được lưu trong lịch sử . Nếu được nhấn một lần nữa, nó sẽ thay thế vị trí vừa tìm thấy bằng một trong những vị trí trước đó trong lịch sử bash. Với một ví dụ đơn giản hơn:cp /my/far/far/away/myfile .
homecp ~/myfile .
cp myfile $OLDPWD
Alt+.

mkdir OldDir
mkdir NewDir
cd # here press `Alt + .` and it will autocomplete with NewDir
   # press `Alt + .` again and you will see "cd OldDir"

Người giới thiệu:

  • Giới thiệu về hoàn thành bash : phần 1phần 2
  • help bind, có giúp đỡ vì bindlà một lệnh tích hợp
  • help completecomplete -p | lessđể có một danh sách trong một định dạng ấm cúng.
  • help pushdhelp popdđể đẩy và bật một thư mục từ ngăn xếp.
  • Lập trình hoàn thành lập trình

2

Và hãy xem Midnight Commander- một trình quản lý tệp chế độ văn bản thực sự tuyệt vời. Bạn có thể điều hướng trong hai bảng, một khi tệp có F5 đơn giản sao chép nó. F6 di chuyển nó ... Tôi sử dụng thiết bị đầu cuối rất nhiều, nếu không phải hầu hết thời gian, nhưng tôi không thể sống thiếu mc(tên bình thường của gói).

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.