Puncte:0

Variabile pe set-hostname și comanda mv în scriptul shell

drapel cn

Am scriptul de mai jos în Shell:

citeste n
pentru ((i=1;i<=$n;i++))
do
echo „Se conectează la $publicip”
ssh -i ./key.txt root@$publicip 'hostnamectl set-hostname autotest$i.domain.com && mv /etc/letsencrypt/live/autotest.domain.com /etc/letsencrypt/live/autotest$i.domain .com && repornire
Terminat

comanda mv folosește o variabilă din comenzile de mai sus. Dar nu pare să funcționeze.Ceea ce primesc o eroare este mv: nu pot muta „/etc/letsencrypt/live/autotest.domain.com” într-un subdirector propriu, „/etc/letsencrypt/live/autotest.domain.com/autotest.domain.com” Nici măcar numele de gazdă setat nu părea să funcționeze (mai ales cu variabile), când am verificat pe celălalt server pentru a vedea dacă numele de gazdă este schimbat. Am încercat multe lucruri în jurul variabilei, cum ar fi adăugarea „” și {} etc, dar nimic nu a funcționat.

Ma poate ajuta cineva in acest sens.

Puncte:1
drapel fr

Variabilele Shell NU sunt extinse în ghilimele simple ' text. Folosiți ghilimele duble " pentru șiruri cu variabile shell.

serverstackqns avatar
drapel cn
Comentând cu răspunsul corect: ssh -i ./key.txt root@$publicip "hostnamectl set-hostname autotest$i.domain.com && mv /etc/letsencrypt/live/autotest.domain.com /etc/letsencrypt/live/autotest$i.domain .com && reporniți"

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.