Unterbrochene Pipe beim Versuch, ein lokales Skript mit lokaler Eingabedatei auf einem Cluster auszuführen, auf den über einen Remote-Host per SSH zugegriffen wird

Unterbrochene Pipe beim Versuch, ein lokales Skript mit lokaler Eingabedatei auf einem Cluster auszuführen, auf den über einen Remote-Host per SSH zugegriffen wird

Ich versuche, ein lokales Skript (z. B. hostname.sh) auf einem Cluster auf einem Remotecomputer mithilfe von SSH auszuführen, erhalte jedoch die folgende Fehlermeldung:

> ssh -A _remote ssh -A _cluster 'bash' < hostname.sh
stdout: write: Broken pipe

Die Datei hostname.sh gibt in diesem Beispiel einfach den Hostnamen aus, kann aber generell komplexer sein. Der Fehler wird wahrscheinlich durch die falsche Verwendung von Pipe verursacht, da Folgendes funktioniert:

ssh -A _remote ssh -A _cluster hostname
> _cluster_name

Ich habe mehrere Lösungen ausprobiert, aber alle schlagen fehl, da sie auf die eine oder andere Weise darauf hinauslaufen, per SSH auf _remote zuzugreifen und dann zu versuchen, hotsname.sh zu lesen, was in diesem Fall nicht verfügbar ist. Was funktioniert, ist, hostname.sh nach _remote zu kopieren, per SSH auf Remote zuzugreifen und dann Folgendes auszuführen:

ssh _cluster "bash" < hostname.sh

Dies bedeutet jedoch, dass ich hostname.sh ständig zwischen lokalen und Remote-Computern synchronisieren muss.

Jede Hilfe wird geschätzt.

verwandte Informationen