Có cách nào để đi đến bất kỳ thư mục từ bất kỳ thư mục khác trực tiếp?


14

Có cách nào để đi đến bất kỳ thư mục từ bất kỳ thư mục khác trực tiếp? Ví dụ: giả sử tôi đang root và tôi muốn truy cập trực tiếp vào currentProject mà không cần thực hiện :

cd dropbox/dev/currentProject



-root
  -dropbox
     -dev
        -currentProject

Có cách nào để làm điều này?

Câu trả lời:


21

Bạn có thể sử dụng một cái gì đó như autojump . Autojump cho phép bạn nhanh chóng chuyển đến các thư mục thường xuyên truy cập bằng jlệnh.

Chẳng hạn, một khi bạn đã cdvào currentProjectthư mục của mình một vài lần, bạn có thể chuyển đến thư mục này như sau:

j currentProject

Bạn thậm chí có thể sử dụng chỉ một phần của tên thư mục. Vì vậy, bạn có thể làm:

j current

Để cdvào currentProject.


8

Bạn cũng có thể thêm một số thư mục phổ biến vào $ CDPATH của mình

export CDPATH=$HOME

Điều này ví dụ sẽ cho phép bạn cdvào bất kỳ thư mục nào trong thư mục nhà của bạn từ bất cứ nơi nào trong hệ thống của bạn.

hơn


7

Điều này không trả lời trực tiếp câu hỏi của bạn, nhưng nếu tôi suy luận chính xác rằng bạn sẽ nhảy giữa các thư mục rất nhiều, bạn có thể sử dụng bộ ghép kênh đầu cuối như GNU Screen để giữ các thư mục khác nhau mở trong các cửa sổ khác nhau và chỉ cần chuyển đổi giữa chúng khi cần thiết. Cá nhân tôi sử dụng Byobu , có thêm một số chức năng trên màn hình.


1
Xem thêm: tmux .
Annika Backstrom

5

Bạn có thể đặt bí danh trong hồ sơ bash của bạn. Về cơ bản cho phép bạn viết tắt một lệnh bằng một từ. Bạn có thể đặt currentProject thực sự trỏ đến / dropbox / dev / currentProject


4

Bạn có thể tạo liên kết tượng trưng trong thư mục chính của bạn đến nơi bạn muốn đến.

ln -s /dropbox/dev/currentProject ~/currentProject

Bằng cách này, bạn vẫn đang sử dụng cd, nhưng bạn không cần phải nhớ đường dẫn đầy đủ. Chỉ dùng:

cd ~/currentProject

Khi bạn ngừng sử dụng liên kết, chỉ cần xóa nó.

rm ~/currentProject

0

Như Wuffers đã đề cập ở trên, autojump có thể làm điều này cho bạn. Nó lưu trữ một cơ sở dữ liệu của các thư mục đã truy cập trước đó và cho phép bạn sử dụng một lệnh như j <a few letters in the directory path>để di chuyển đến thư mục đó. Có một lệnh bổ sung cho autojump có tên jcđáp ứng yêu cầu của bạn. jccho phép bạn chuyển đến thư mục con đã truy cập trước đó của thư mục làm việc hiện tại. Vì vậy, bạn chỉ phải truy cập vào thư mục một lần để nó hoạt động cho đến khi bạn xóa cơ sở dữ liệu tự động. Ngoài ra, bạn cũng có thể thêm nó trực tiếp thay vào đó autojump --add DIR(có thể xây dựng danh sách thêm từ danh sách cây thư mục nếu cần).


0

Trong bash và * csh, có các lệnh dựng sẵn 'pushd' và 'popd' cho phép bạn đẩy các thư mục lên ngăn xếp Last In First Out (với pushd [directory]) và sau đó nhanh chóng thay đổi thư mục trên cùng trong ngăn xếp bằng 'popd'. Vì vậy, tùy thuộc vào cách bạn tải ngăn xếp, bạn có thể nhanh chóng điều hướng giữa các thư mục phù hợp để chức năng này phù hợp với bạn.

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.