Tôi là người dùng paramiko mới và đang gặp khó khăn khi chạy các lệnh trên máy chủ từ xa với paramiko. Tôi muốn xuất một đường dẫn và cũng chạy một chương trình có tên là tophat
ở chế độ nền. Tôi có thể đăng nhập tốt với paramiko.sshclient()
nhưng mã của tôi để exec_command
không có kết quả.basic paramiko exec_command giúp
stdin, stdout, sterr = ssh.exec_command('export PATH=$PATH:/proj/genome/programs
/tophat-1.3.0/bin:/proj/genome/programs/cufflinks-1.0.3/bin:/proj/genome/programs/
bowtie-0.12.7:/proj/genome/programs/samtools-0.1.16')
stdin, stdout, sterr = ssh.exec_command('nohup tophat -o /output/path/directory -I
10000 -p 8 --microexon-search -r 50 /proj/genome/programs/bowtie-0.12.7/indexes
/ce9 /input/path/1 /input/path/2 &')
không có nohup.out
tệp và python chuyển sang dòng tiếp theo không có thông báo lỗi. Tôi đã thử không có nohup
và kết quả là như nhau. Tôi đang cố gắng theo dõi this paramiko tutorial.
Tôi có đang sử dụng exec_command
không chính xác không?
Lệnh thứ hai chạy trong một trình bao khác so với lệnh đầu tiên, vì vậy 'xuất' sẽ không có hiệu lực. –
Bạn nên làm tốt hơn để chỉ đặt biến môi trường trong một dòng. Đó là: 'ssh.exec_command ('PATH =/bin:/usr/bin: etcetera nohup ...')'; điều này sẽ xuất khẩu nó cho lệnh duy nhất, đó là chính xác những gì bạn muốn. –