création par programmation d'un répertoire distant à l'aide de ssh


10

À l'aide d'un script shell, comment puis-je créer un répertoire à distance à partir de serverA -> serverB à l'aide de ssh? Puis-je passer la commande create directory avec la commande ssh? Comment?

Je cherche essentiellement à créer un répertoire à distance en fonction de la date (ex. 20110304), s'il n'existe pas déjà.

Réponses:


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

Je ne sais pas exactement ce que vous entendez par "par date", mais vous pouvez tester avant mkdir comme ci-dessous

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

si vous voulez un nom de répertoire comme vous le mentionnez, essayez

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

Sélectionnez votre code et appuyez sur CTRL + K pour activer le code mettant en lumière ou éventuellement les entourer dans `` si des contre - apostrophes vous voulez mettre en évidence en ligne likesi
SiegeX

7

vous pouvez l'accomplir comme ceci:

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

ou Si vous avez un script sur serverA ....

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

aussi si vous avez besoin de bash pour charger votre environnement, vous pouvez utiliserbash --login

0

Si vous souhaitez générer une date par programme, jetez un œil à date +format:

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

0

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

Vous devez configurer une authentification sans mot de passe entre les serveurs pour que cela fonctionne. Voici les étapes pour le faire.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.