programowo tworząc zdalny katalog za pomocą ssh

11

Za pomocą skryptu powłoki, jak mogę utworzyć katalog zdalnie z serwera A -> serwer B za pomocą ssh? Czy mogę przekazać polecenie utworzenia katalogu za pomocą polecenia ssh? W jaki sposób?

Zasadniczo chcę utworzyć katalog zdalnie na podstawie daty (np. 20110304), jeśli jeszcze nie istnieje.

jdamae
źródło

Odpowiedzi:

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

nie wiem, co dokładnie rozumiesz przez „według daty”, ale możesz przetestować przed mkdir, jak poniżej

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

jeśli chcesz, aby nazwa katalogu była wspomniana, spróbuj

ssh remote-host-ip '. ~/your_profile; test -d your_parent_directory/$(date +%Y%M%d) || mkdir your_parent_directory/$(date +%Y%M%d)'
SOUser
źródło
Wybierz swój kod i naciśnij Ctrl + K, aby włączyć podświetlanie kodu lub opcjonalnie otoczyć je w backticks `jeśli chcesz wyróżnić inline liketak
SiegeX
7

możesz to zrobić w następujący sposób:

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

lub Jeśli masz skrypt na serwerze A ....

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

źródło
także, jeśli potrzebujesz bash, aby załadować środowisko, możesz użyćbash --login
0

Jeśli chcesz wygenerować datę programowo, spójrz na date +format:

jinx:774 Z$ date +%m%d%H%M
03041904
geekozaur
źródło
0

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

Aby to działało, musisz skonfigurować uwierzytelnianie między serwerami bez hasła. Oto kroki, aby to zrobić.

atripathi
źródło