Ich kann eine Datei problemlos auf einen entfernten Linux-Rechner kopieren
scp file user@host: /pathtowrite_file
Ich habe jedoch Schwierigkeiten, von einem Linux-Computer auf einen anderen in eine Datei zu schreiben. Folgendes habe ich versucht:
echo 'Some Text' > /remotefile.txt | ssh user@remotehost
Die Nachricht, die ich bekomme, ist
stdin: ist keine tty
In jedem Fall gibt die Datei auf dem Remote-Computer nicht den gesendeten Text "Some Text" wieder.
Ein bisschen kürzer als die andere Antwort:
quelle
echo
- lokal ausführen möchte, hilft Ihre Antwort nicht, und die akzeptierte Antwort ist der Weg, dies zu tun.ssh localhost "echo 'hi'; echo 'hello'; echo 'well, hello there!'
ssh localhost
? Das macht das Wasser nur trüb und nicht klarer. (2) Wenn Sie in Ihrem geänderten Beispiel keine Umleitung anzeigen, stellen Sie sich die Frage, ob Sie Befehle gruppieren und die gesamte Ausgabe an eine Datei senden können. … (Fortsetzung)command (localhost)
>
file (remotehost)
Es ist auch möglich, dd zum Anhängen an eine Datei zu verwenden. Möglicherweise etwas unklar, aber nützlich, wenn die Ausgabeumleitung auf dem Remote-Host nicht möglich ist.
In diesem Beispiel wird Ihr öffentlicher Schlüssel an die Datei authorized_keys auf dem Remote-Host angehängt.
(Quelle: http://www.rsync.net/resources/howto/ssh_keys.html )
quelle
Dadurch wird der Inhalt Ihrer Zwischenablage auf einem Mac übernommen und an das Ende einer Datei angehängt:
Auf diese Weise können Sie an das Ende einer Datei auf einem Remote-Host schreiben (anhängen):
quelle
Wenn dieser Code mehrmals verwendet werden muss, ist er möglicherweise einfacher zu verwenden. Mit dem Tool "sshpass" fordert ssh Sie nicht bei jedem Aufruf des Skripts zur Eingabe eines Kennworts auf. (es sei denn, Sie müssen es geheim halten, dann besser nicht verwenden)
Weitere Informationen zu sshpass finden Sie unter https://stackoverflow.com/questions/12202587/automatically-enter-ssh-password-with-script
quelle
Sie können einfach
vi
odernano
oderpico
editor verwenden:Sie müssen dann jedoch
Some Text
selbst in den Editor schreiben , sodass dieser Vorgang nicht wirklich batch-kompatibel ist.quelle
Erstellen Sie ein Skript wie folgt:
quelle
yum
ohne einen sehr guten Grund nicht verwendet. Diese Antwort zeigt, wie, aber nicht warum. (Stornieren Sie die Abstimmung für den Moment - ich hoffe, Sie werden diese bearbeiten, um mehr Kontext bereitzustellen)