Programmgesteuertes Erstellen eines Remote-Verzeichnisses mit ssh


10

Wie kann ich mithilfe eines Shell-Skripts mithilfe von ssh ein Verzeichnis remote von serverA -> serverB erstellen? Kann ich den Befehl create directory mit dem Befehl ssh übergeben? Wie?

Grundsätzlich möchte ich ein Verzeichnis basierend auf dem Datum (z. B. 20110304) aus der Ferne erstellen, sofern es noch nicht vorhanden ist.

Antworten:


11
ssh remote-host-ip '. ~/your_profile; mkdir your_directory'

Ich weiß nicht, was du genau mit "nach Datum" meinst, aber du könntest vor mkdir wie unten testen

ssh remote-host-ip '. ~/your_profile; test -d your_directory || mkdir your_directory'

Wenn Sie einen Verzeichnisnamen möchten, wie Sie erwähnen, versuchen Sie es

ssh remote-host-ip '. ~/your_profile; test -d your_parent_directory/$(date +%Y%M%d) || mkdir your_parent_directory/$(date +%Y%M%d)'

Wählen Sie Ihren Code aus und drücken Sie STRG + K, um die Code-Hervorhebung zu aktivieren, oder umgeben Sie sie optional mit Backticks ``, wenn Sie Inline likeso
hervorheben

7

Sie können es so erreichen:

  ssh you@serverB "mkdir /path/to/dir"

oder Wenn Sie ein Skript auf serverA haben ....

  ssh you@serverB 'bash -s' < local_script.sh

Auch wenn Sie Bash benötigen, um Ihre Umgebung zu laden, können Siebash --login

0

Wenn Sie programmgesteuert ein Datum generieren möchten, sehen Sie sich Folgendes an date +format:

jinx:774 Z$ date +%m%d%H%M
03041904

0

ssh user@server mkdir path/$(date +%Y%m%d)

Sie müssen eine kennwortlose Authentifizierung zwischen den Servern einrichten, damit dies funktioniert. Hier sind die Schritte dazu.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.