2016-10-12 1 views
0

Ich muss Remote-Verbindung zu einem Gateway (arbeiten auf Linux-Plattform), in dem ich ein paar ausführbare Dateien (signingModule.sh und taxModule.sh). Jetzt möchte ich ein Skript auf meinem Desktop schreiben, das eine Verbindung zu diesem Gateway herstellt und signingModule.sh und taxModule.sh in zwei verschiedenen Terminals ausführen.Wie mehrere Skripte in Remote-Rechner

Ich habe unten Code geschrieben:

ssh [email protected] #to connect to gateway 

sleep 5 

cd /opt/swfiscal/signingModule #path of both modules 

./signingModule #executable. 

Aber durch diesen Code, den ich im Stande bin, mein Tor zu verbinden, aber nichts passiert Gateway wird nach dem Anschließen.

2. Code:

source configPath # file where i have given path of both the modules 

cd $FCM_SCRIPTS # variable in which i have stored the path of modules 

ssh [email protected] 'sh -' < startSigningModule** #to connect and run one module. 

als Ausgang dieses ich erhalte:

-Quelle: ConfigPath: Datei nicht

gefunden Bitte helfen Sie mir diese Arbeit aus. Danke im Voraus.

Hinweise:

  1. ich meine Dateien einfügen in diesem Gateway bei Bedarf kopieren können.
  2. Gnome-Terminal oder andere Alternativen dies funktioniert nicht in meinem Gateway
+1

Sie so etwas tun kann. ssh bar @ foo "command1 && command2" –

+0

es funktioniert nicht :( –

+0

Erhalten Sie einen Fehler? –

Antwort

0
ssh [email protected] "cd /opt/swfiscal/signingModule && ./signingModule" 

Linie source configPath funktioniert nicht, weil Sie vollständigen Pfad zur Datei benötigen angeben.

+0

ich werde dies versuchen. aber was, wenn ich mehrere Datei in verschiedenen Terminals laufen lassen möchte –

+0

hey ich versuchte, aber nicht funktioniert ... :( –

0

Sie können mehrere Befehle an ssh übergeben, um sie nacheinander auszuführen. aber ich bevorzuge eine andere Lösung: Ich habe ganze Skripte lokal; Laufen sie aus der Ferne bedeutet:

  1. Mit scp mein Skript zu dem Remote-System
  2. Mit ssh zu kopieren, um dann das Skript auf dem entfernten System laufen

Der große Vorteil hier : Es gibt immer eine Möglichkeit, Dinge falsch zu machen (zum Beispiel: zitieren), wenn man Befehle direkt an ssh gibt. Aber wenn Sie alles in ein Skript schreiben, haben Sie genaue/vollständige Kontrolle darüber, was passieren wird. Sie können Dinge wie „set -e“ in das Skript gesetzt Fehlerbehandlung zu verbessern ...

(und natürlich können Sie auch die beiden Schritte automatisieren oben aufgeführt!)

+0

Sorry, ich bekomme wirklich nicht dieses Ding .. Ich bin nicht dieser Experte in Bash Scripting .. noch lernen .. es würde Sei sehr hilfreich, wenn du mir das erklären kannst –

Verwandte Themen