Có một tùy chọn shell cdable_vars
:
cdable_vars
Nếu điều này được đặt, đối số cho cd
lệnh nội trang không phải là thư mục được giả định là tên của một biến có giá trị là thư mục cần thay đổi.
Bạn có thể thêm cái này vào .bashrc
:
shopt -s cdable_vars
export myFold=$HOME/Files/Scripts/Main
Lưu ý rằng tôi đã thay thế dấu ngã bằng $HOME
; dấu ngoặc kép ngăn chặn mở rộng dấu ngã và Bash sẽ phàn nàn rằng không có thư mục ~/Files/Scripts/Main
.
Bây giờ bạn có thể sử dụng nó như sau:
cd myFold
Không $
yêu cầu. Đó là toàn bộ điểm, thực sự - như được hiển thị trong các câu trả lời khác, cd "$myFold"
hoạt động mà không có tùy chọn shell. cd myFold
cũng hoạt động nếu đường dẫn trong myFold
chứa khoảng trắng, không cần trích dẫn.
Điều này thậm chí thường hoạt động với tính năng tự động hoàn thành tab khi _cd
hàm trong bash_completion
kiểm tra xem cdable_vars
có được đặt hay không - nhưng không phải mọi triển khai đều thực hiện theo cùng một cách, vì vậy bạn có thể phải lấy bash_completion
lại nguồn trong .bashrc
(hoặc chỉnh sửa /etc/profile
để đặt tùy chọn shell).
Các trình bao khác có các tùy chọn tương tự, ví dụ Zsh ( cdablevars
).