2017-05-10 7 views
0

Je fait ce qui suit:Python Tissu: Comment exécuter la commande à l'écran la session

with settings(host_string=h['server'].rstrip('\n').strip(), warn_only=True): 
       # run("hostname -f") 
       with cd('path/folder'): 
        # Check for Screen session, if none, create one otherwise screen -d -r 
        result = run('screen -r') 
        output_stdout = result.stdout.strip() 
        print('OUTPUT = ' + output_stdout) 
        if 'There is a screen on' in output_stdout: 
         run('screen -d -r') 
         run('exit') 
        elif 'There is no screen to be resumed' in output_stdout: 
         run('screen') 
         # Checking screen stats 
         run('screen -r') 
         # Generate Link File 
         run('python3 file.py ' + str(start) + ' ' + str(end)) 

ce qui se passe une fois que l'écran est allumé, le tissu pénètre dans une boucle infinie et ne sort jamais.

Répondre

2

Avez-vous essayé de faire screen -Rd:

-d -R Reattach a session and if necessary detach or even create it first.