2016-04-12 6 views
0

Ich versuche Bash-Skript auf meinem lokalen Rechner auszuführen. Der Speicherort des Skripts ist /opt/saas/script.sh. Unten ist die Funktion zum Ausführen des Skripts.Python Fabric führt kein Skript lokal aus

# Run script on local machine. 
def run_local_script(self, path, script): 
    print("Path:"+path) 
    with cd(path): 
     local('.' + script) 

Aber jedes Mal, wenn ich das laufe, bekomme ich das.

Path is: /opt/saas/ 
[localhost] local: ./update_services.sh 
/bin/sh: 1: ./update_services.sh: not found 

Fatal error: local() encountered an error (return code 127) while executing './update_services.sh' 

Aborting. 

Hinweis: Ich versuche Skript lokal mit einer früheren Verbindung hergestellt mit einem entfernten Rechner ausgeführt wird. Ich hoffe, das sollte sich nicht auswirken. Ich habe auch versucht, das Skript nach disconnect_all() auszuführen, aber immer noch keinen Erfolg.

Antwort

0

Verwenden Sie stattdessen den Kontextmanager lcd (siehe Note).

# Run script on local machine. 
def run_local_script(self, path, script): 
    print("Path:"+path) 
    with lcd(path): 
     local('.' + script) 
+0

Das funktioniert! Vielen Dank :) –

Verwandte Themen