de base paramiko exec_command aider

Je suis un nouveau paramiko utilisateur et éprouve des difficultés à exécuter des commandes sur un serveur distant avec paramiko. Je veux exporter un chemin d'accès et également exécuter un programme appelé tophat en arrière-plan. Je peux me connecter bien avec paramiko.sshclient() mais mon code pour exec_command a pas de résultats.

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 &')

il n'y a pas de nohup.out fichier python et passe à la ligne suivante avec pas de messages d'erreur. J'ai essayé sans nohup ainsi et le résultat est le même. J'essayais de suivre ce tutoriel paramiko.

suis-je à l'aide de exec_command mal?

La deuxième commande s'exécute dans un environnement différent de la première, de sorte que le export n'aura aucun effet.
Vous feriez mieux de mettre juste la variable d'environnement dans la ligne. Qui est: ssh.exec_command('PATH=/bin:/usr/bin:etcetera nohup ...'); cela va exporter pour la simple commande uniquement, ce qui est exactement ce que vous voulez.

OriginalL'auteur pieguy | 2011-08-09