2009-01-05 25 views
21

Hệ thống tôi đang sử dụng có gnuplot được cài đặt trong /usr/bin. Tôi không có gốc, nhưng tôi cần một phiên bản mới hơn của gnuplot, vì vậy tôi đã cài đặt nó vào $HOME/usr/bin. Làm thế nào để nói với linux để sử dụng một trong thư mục chính của tôi và không phải là một trong /usr/bin. Tôi đã thêm $HOME/usr/bin vào đường dẫn của mình, nhưng nó vẫn thực hiện một trong /usr/bin nếu tôi chỉ sử dụng lệnh gnuplot. Tôi không muốn chỉ định $HOME/usr/bin/gnuplot mọi lúc tôi phải sử dụng nó.Chọn giữa nhiều tập tin thực thi có cùng tên (linux)

Cảm ơn!

Trả lời

22

Thực thi được tìm thấy trong thứ tự PATH. Bạn cần phải thêm ${HOME}/usr/bin vào đường dẫn của mình, như vậy:

export PATH="${HOME}/usr/bin:$PATH" 
20

Thực thi được tìm thấy trong thứ tự PATH. PATH của bạn dường như được thiết lập sao cho /usr/bin đứng trước ~/usr/bin/.

+0

Sẽ tốt hơn nếu bạn cung cấp một số tài liệu để hỗ trợ quan điểm của bạn. – hiveer

2

Điều Bombe nói là ổn. Tôi sẽ thêm rằng bạn nên khai báo các mục PATH người dùng cụ thể của bạn bên trong bashrc của người dùng ($HOME/.bashrc), vì vậy cài đặt PATH của bạn chỉ áp dụng cho người dùng của bạn.

+0

Ông không có gốc, vì vậy tôi nghi ngờ ông có thể thay đổi toàn cầu PATH :) –

+0

Xin vui lòng đọc lại câu trả lời của tôi. Tôi nói rằng anh ta nên thay đổi người dùng .bashrc của người dùng của mình, tất nhiên là có thể ghi được bởi người dùng riêng (người thực sự là chủ sở hữu của tệp). –

5

Bên cạnh đó sửa đổi PATH như đã được giải thích, bạn cũng có thể sử dụng bí danh như thế này (trong BASH)

alias gn=$HOME/usr/bin/gnuplot 

sau đó bạn chỉ cần chạy nó với

gn 
+1

Không quá chắc chắn rằng việc mã hóa đường dẫn là một ý tưởng hay cho một bí danh. Tôi thà dùng nó để chỉ định những lá cờ mà tôi luôn muốn. –

+0

Trong trường hợp này, nơi bạn muốn có một phiên bản cụ thể của một chương trình, tôi thấy không có vấn đề gì cả. –

Các vấn đề liên quan