Khi tôi chạy chương trình của mình một cách tương tác, nó hoạt động tốt:
ssh somehost
$ ~/some/path/somescript.py
Khi tôi chạy chương trình của mình qua ssh trực tiếp, nó không hoạt động. Biến PYTHONPATH
không được đặt, vì .bashrc
không có nguồn gốc.
ssh somehost ~/some/path/somescript.py
Nếu tôi chạy ssh somehost 'source ~/.bashrc; ~/some/path/somescript.py'
, nó hoạt động tốt.
Nhưng cái sau sẽ không hiệu quả với một số người khác, ví dụ như sử dụng tcsh và hoàn toàn không có ~/.bashrc
).
Là những gì các lệnh để chạy một điều qua ssh trên máy chủ khác mà làm việc cho tất cả vỏ?
bash
, thì nó sẽ lấy nguồn .bash_profile
hoặc .profile
để đăng nhập tương tác và .bashrc
cho đăng nhập không tương tác. Nếu shell đăng nhập của bạn được bash gọi là as sh
hoặc ash hoặc ksh, nó sẽ .profile
tạo ra một thông tin đăng nhập tương tác và không có gì cho đăng nhập không tương tác.