Tạo một liên kết tượng trưng để điều hướng với cd


3

Có thể tạo một liên kết tượng trưng để thư mục thay đổi dễ dàng hơn? như

ln -s /Users/mles/Documents /usr/local/bin/d

vì vậy tôi có thể cd d thay vì cd ~/Documents?


Đây là một câu trả lời chung cho câu hỏi này: táo.stackexchange.com/a/97312/22003 .
daniel Azuelos

Câu trả lời:


3

Vấn đề với việc tạo liên kết tượng trưng theo cách đó là bạn bị giới hạn ở nơi liên kết tượng trưng được tạo. Nó cũng thêm vào vấn đề nếu bạn có một thư mục ../d/.. một nơi nào đó trên hệ thống của bạn.

Có một vài cách để giải quyết điều này ....

Tạo bí danh

Trong terminal, bạn có thể tạo bí danh bằng cách phát lệnh

alias cdd='cd ~/Documents'

Lợi ích ở đây là nó sẽ hoạt động ở bất cứ đâu mà không cần phải thêm nó vào PATH của bạn.

Để làm cho nó vĩnh viễn, thêm lệnh vào .bash_profile trong thư mục nhà của bạn.

Tạo một biến cd có thể

Ngoài ra, trong của bạn .bash_profile thêm những điều sau

shopt -s cdable_vars 
export Docs=$HOME/Documents

Bây giờ, khi bạn gõ cd Docs nó sẽ mở rộng ra HOME cho bất cứ điều gì thư mục người dùng của bạn là cộng với thư mục bạn đã chỉ định. ( /Users/yourusername/Documents )

Cá nhân, tôi đã làm điều này với một biến gọi là icloud như sau:

export  icloud=$HOME/Library/Mobile\ Documents/com~apple~CloudDocs/

Bây giờ, tôi có thể tham chiếu vị trí tài liệu iCloud của mình mà không cần phải nhớ đường dẫn dài đó.


1

Bạn có thể xác định các biến chỉ vào thư mục của bạn. Ví dụ:

[~]$ export d=~/Documents

[~]$ ls -l $d
[~]$ cd $d
[~/Documents]$ 

Trong bash bạn có thể sử dụng cdable_vars tùy chọn để có thể cd không có trước $:

[~]$ shopt -s cdable_vars
[~]$ export d=~/Documents

[~]$ cd d
[~/Documents]$ 

Nhưng nó không cho phép thả $ cho các lệnh khác, vì vậy ls -l d sẽ không làm việc

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.