Tôi có thể thêm lối tắt để thay thế đường dẫn trong Linux không?


33

Chẳng hạn, tôi luôn đi theo con đường này:

/ người dùng / cái gì đó / vài thư mục / ở đâu đó

nhưng tôi không muốn gõ

cd / người dùng / cái gì đó / vài thư mục / ở đâu đó

trong thiết bị đầu cuối tất cả các thời gian, tôi có thể có một số tay ngắn để làm như vậy? ví dụ, tôi có thể làm gì đó như

lệnh cdPlace

để thay thế con đường?

Câu trả lời:


32

Bạn có thể sử dụng biến môi trường CDPATHcho việc này. Từ trang Bash man:

CDPATH

Đường dẫn tìm kiếm cho lệnh cd. Đây là danh sách các thư mục được phân tách bằng dấu hai chấm trong đó shell tìm kiếm các thư mục đích được chỉ định bởi lệnh cd. Giá trị mẫu là ".: ~: / Usr".

Trong trường hợp của bạn, bạn có thể thiết lập

export CDPATH=.:/user/something/somefolders

vào ~/.bashrc, và sau đó gõ cd somewheresẽ đưa bạn đến /user/something/somefolders/somewhere(giả sử không có thư mục có tên somewheretrong thư mục hiện tại).

Ngoài ra, nếu bạn không muốn đề cập đến thư mục somewherebằng tên thật của nó, bạn có thể tạo một thư mục ẩn có chứa một liên kết tượng trưng /user/something/somefolders/somewherevới tên bạn muốn sử dụng. Nó cũng có thể chứa các liên kết đến bất kỳ thư mục khác mà bạn thường xuyên truy cập. Sau đó thiết lập CDPATHđể bao gồm đường dẫn đến thư mục ẩn đó. Mặc dù lưu ý rằng với phương pháp này, nếu bạn cd somewherevà sau đó cd .., bạn sẽ kết thúc trong thư mục ẩn. Điều đó có thể hoặc không thể là một vấn đề cho bạn.


41

Hai phím tắt tôi sử dụng tất cả thời gian cho những thứ như thế này:

Bí danh

bí danh somedir = 'cd / home / john / www / Something /'

Sau đó, bạn có thể gõ somedirđể đi đến thư mục đó. Thêm chúng vào của bạn .bashrc.

Liên kết tượng trưng

ln -s / long / path / to / some / other / thư mục / phím tắt

Điều này sẽ tạo ra một tập tin /shortcutmà tại đó liên kết đến /long/path/to/some/other/folder. Sau đó, bạn có thể gõ cd /shortcutthay thế. Thông báo trước cho việc này là nó lấp đầy thư mục gốc của bạn (hoặc bất kỳ thư mục nào bạn đặt các liên kết vào) khá nhanh. Tôi thích bí danh.


John tốt bụng!
Gob00st

nó được cho là ln -s /long/path/to/some/other/folder /shortcutkhi tôi làm theo cách khác xung quanh nó đã tạo ra lối tắt ở nơi tôi muốn tạo liên kết đến. Tôi đã gửi một chỉnh sửa để làm cho nó cập nhật.
Elias

1
Làm thế nào về một thư mục trong thư mục gốc với một tên ngắn, ví dụ /slvà tạo các phím tắt trong đó? (ví dụ ln -s /long/path/to/some/other/folder /sl/shortcut? Không lộn xộn trong thư mục gốc, cộng với một lời nhắc nhở trực quan rằng con đường nhanh chóng của bạn là một liên kết tượng trưng.
RolfBly

14

Tôi có xu hướng sử dụng tìm kiếm tương tác bash mọi lúc. Thử nó. Gọi nó bằng ctrl + r và bắt đầu nhập một phần của đường dẫn của bạn, như ở đâu đó . Có thể lệnh cd của bạn sẽ bật lên. :)


9

Nhìn vào lệnh "bí danh".

Trong csh:

alias commandplace "cd /user/something/somefolders/somewhere"

Trong sh:

alias commandplace="cd /user/something/somefolders/somewhere"

Nhưng tôi thích giải pháp symlink:

ln -s /user/something/somefolders/somewhere ~/commandplace 

Lưu ý: ln lấy các đối số theo thứ tự giống như cp.


9

Một điều khác bạn có thể làm là lưu trữ đường dẫn trong câu hỏi trong một biến môi trường. Thêm những dòng này vào ~/.profiletập tin của bạn :

somedir=/user/something/somefolders/somewhere
export somedir

Sau đó bạn có thể truy cập vào thư mục với

cd "$somedir"

1
Đây là một giải pháp tốt nhất bởi vì bạn có thể sử dụng biến cho bất kỳ lệnh nào. Nếu bạn gán bí danh thì bí danh đó luôn được gắn với một lệnh như cd ...
BdN3504 23/07/14

Đây là giải pháp tôi đã hy vọng tồn tại, và đang tìm kiếm. Vì những lý do BdN3504 đã nêu.
lấy cảm hứng từ

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.