Ich habe ein Programm auf einem Remote-Host, dessen Ausführung ich automatisieren muss. Der Befehl, mit dem dieses Programm auf demselben Computer ausgeführt wird, sieht ungefähr so aus:
/path/to/program -a file1.txt -b file2.txt
In diesem Fall werden file1.txt
und file2.txt
für ganz andere Dinge innerhalb des Programms verwendet, sodass ich sie nicht einfach cat
zusammenstellen kann. Aber in meinem Fall, das file1.txt
und file2.txt
das möchte ich in das Programm zu übergeben existiert nur auf dem Gerät, nicht auf dem Host , wo ich das Programm auszuführen. Ich weiß, dass ich mindestens eine Datei durch SSH füttern kann, indem ich sie durchgebe stdin
:
cat file1.txt | ssh host.name /path/to/program -a /dev/stdin -b file2.txt
Da ich aber keine Dateien auf dem Host speichern darf, brauche ich auch eine Möglichkeit, um die Dateien dorthin zu bringen file2.txt
. Ich denke, es könnte durch den Missbrauch von Umgebungsvariablen und den kreativen Einsatz von cat
und sed
zusammen möglich sein, aber ich kenne die Tools nicht gut genug, um zu verstehen, wie ich sie verwenden würde, um dies zu erreichen. Ist es machbar und wie?
cat
undsed
sind hier nicht die lösung.