trong tôi ~.profile
PATH="/path/1/":"/path/2/":"$PATH"
/path/1/
và /path/2/
cả hai đều có các tập tin thực thi cùng tên myexecutable
.
Trong một vỏ tương tác không có lợi nhuận, tôi muốn tạm thời trao đổi thứ tự tìm kiếm giữa hai thư mục.
Hướng dẫn Bash nói cho hash
Tùy chọn -p ngăn chặn tìm kiếm đường dẫn và tên tệp được sử dụng làm vị trí của tên.
Cách của tôi là
$ hash -p /path/2/myexecutable
hits command
3 /usr/bin/which
4 /usr/bin/psql
1 /bin/cat
10 /usr/bin/sudo
1 /bin/mv
1 /usr/bin/whereis
3 /bin/mkdir
19 /bin/ls
đầu ra giống như hash
và dường như không thay đổi myexecutable
thành /path/2/myexecutable
:
$ which myexecutable
/path/1/myexecutable
Vì vậy, những gì hash -p
thực sự làm?
Cảm ơn.
where myexecutale
không thay đổi sauhash -p /path/2/myexecutable myexecutable
? Tôi tìm thấy như vậy, nhưng tại sao nó?