programaticamente criando um diretório remoto usando ssh

8

Usando um script de shell, como criar um diretório remotamente de serverA - > serverB usando ssh? Posso passar o comando create directory com o comando ssh? Como?

Estou basicamente procurando criar um diretório remotamente com base na data (por exemplo, 20110304), se ainda não existir.

    
por jdamae 05.03.2011 / 00:48

4 respostas

11

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

não sei exatamente o que você quer dizer com "por data", mas você pode testar antes de mkdir como abaixo

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

se você quiser um nome de diretório como mencionado, tente

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

você pode fazer isso assim:

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

ou Se você tiver um script no servidorA ....

  ssh you@serverB 'bash -s' < local_script.sh
    
por 05.03.2011 / 00:49
0

Se você quiser gerar uma data programaticamente, dê uma olhada em date +format :

jinx:774 Z$ date +%m%d%H%M
03041904
    
por 05.03.2011 / 01:04
0

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

Você precisa configurar a senha com menos autenticação entre os servidores para que isso funcione. Aqui estão os passos para fazer isso.

    
por 14.01.2013 / 07:40