Tôi không gặp phải hành vi đó. Nhưng tôi đã có thể tái tạo nó. Có thể bạn vô tình thay đổi tùy chọn cdspell
. Xem Hướng dẫn tham khảo Bash :
cdspell
Nếu được đặt, các lỗi nhỏ trong chính tả của thành phần thư mục trong lệnh cd sẽ được sửa. Các lỗi được kiểm tra là các ký tự được chuyển đổi, một ký tự bị thiếu và một ký tự quá nhiều. Nếu tìm thấy một hiệu chỉnh, đường dẫn đã sửa được in và lệnh sẽ tiếp tục. Tùy chọn này chỉ được sử dụng bởi các vỏ tương tác.
Tôi đã thử nó và nó luôn sửa đường dẫn trong đối số được đưa ra cd
. Nếu có nhiều khả năng như trong thư mục của bạn với ProjectA
, ProjectB
và ProjectC
, nó mặc định là khả năng cuối cùng trong thứ tự thư mục. Bạn có thể kiểm tra bằng cách ls -U
. Xem ví dụ:
user@host:~$ ls -Ul
total 0
drwxr-xr-x 2 root root 40 May 26 08:11 ProjectA
drwxr-xr-x 2 root root 40 May 26 08:11 ProjectB
drwxr-xr-x 2 root root 40 May 26 08:11 ProjectC
user@host:~$ cd Project<tab><tab>
ProjectA/ ProjectB/ ProjectC/
user@host:~$ cd Project
ProjectC
user@host:~/ProjectC$
Để vô hiệu hóa hành vi đó, hãy sử dụng:
shopt -u cdspell