[rlug] bash while loop :: bucla oprita daca se ruleaza ssh

Bogdan BOTEZ bmbogdan at gmail.com
Fri Jun 29 17:19:59 EEST 2018


https://unix.stackexchange.com/questions/107800/using-while-loop-to-ssh-to-multiple-servers

Aparent consuma stdin?


2018-06-29 17:04 GMT+03:00 Adrian Sevcenco <Adrian.Sevcenco at cern.ch>:

> On 06/29/2018 04:33 PM, Adrian Popa wrote:
>
>> Dacă îl rulezi cu bash -x ar trebui să vezi comenzile și outputurile și să
>>
> aha, merci de tip!
>
> îți dai seama ce se întâmplă. Posibil să nu iasă din primul ssh și de-aia
>> să se oprească acolo...
>>
> imi iese cred .. nici asa nu imi dau seama .. cu ssh-ul in efect am asa :
>
> + read -r DIR
> + (( idx++ ))
> + [[ /storage01/xrddata/public/B4 =~ ^#.*$ ]]
> + REMOTE_DIR=/storage_zfs//storage01/xrddata/public/B4/
> + echo 1
> 1
> + echo ssh storage08 /bin/mkdir -p /storage_zfs//storage01/xrddat
> a/public/B4/
> ssh storage08 /bin/mkdir -p /storage_zfs//storage01/xrddata/public/B4/
> + echo 'inainte ssh'
> inainte ssh
> + ssh storage08 /bin/mkdir -p /storage_zfs//storage01/xrddata/public/B4/
> + echo 'dupa ssh'
> dupa ssh
> + ((  idx == 3   ))
> + read -r DIR
>
> si se opreste aici
> cu ssh-ul comentat continua bucla pana la :
> + ((  idx == 3   ))
> + break
>
> am schimbat si testul in [[ -eq ]] si ramane tot in :
> + echo 'dupa ssh'
> dupa ssh
> + [[ 1 -eq 3 ]]
> + read -r DIR
>
> ca si cun nu ar putea sa continue sa citeasca fisierul :((
>
> Dar, ciudat e ca nu am nici o eroare :(((
>
>
>
>
>
>> On Fri, Jun 29, 2018 at 4:22 PM, Adrian Sevcenco <Adrian.Sevcenco at cern.ch
>> >
>> wrote:
>>
>> Salutare! So, am o situatie de mai am un pic si imi sar sigurantele :((
>>>
>>> citest un fisier linie cu linie in o bucla :
>>>
>>> idx="0"
>>> while read -r DIR; do
>>>      ((idx++))
>>>      [[ "${DIR}" =~ ^#.*$ ]] && continue
>>>      REMOTE_DIR="${DESTDIR}/${DIR}/"
>>>      echo $idx
>>> echo     ssh ${DESTHOST} /bin/mkdir -p ${REMOTE_DIR}
>>>
>>> echo "inainte ssh"
>>> #ssh ${DESTHOST} /bin/mkdir -p ${REMOTE_DIR}
>>> echo "dupa ssh"
>>> (( idx == 3  )) && break
>>>
>>> done < ${FILE}
>>>
>>> daca comentez linia de ssh imi ajunge idx la 3 (corespunzator vad si echo
>>> ssh)
>>> daca am linia cu ssh si mkdir
>>> am doar :
>>> 1
>>> ssh storage08 /bin/mkdir -p /storage_zfs//storage01/xrddata/public/B4/
>>> inainte ssh
>>> dupa ssh
>>>
>>> Poate o minte luminata sa imi spuna si mie de ce se opreste bucla daca
>>> rulez ssh-ul ala?
>>> comanda e valida - merge de sine statator dar oricum am incercat si cu
>>> trickul prin base64
>>> standalone merge oricum, doar in bucla nu :(((
>>>
>>> Multumesc frumos!!
>>> Adrian
>>>
>>>
>>> _______________________________________________
>>> RLUG mailing list
>>> RLUG at lists.lug.ro
>>> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
>>>
>>>
>>> _______________________________________________
>> RLUG mailing list
>> RLUG at lists.lug.ro
>> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
>>
>>
>
>
> _______________________________________________
> RLUG mailing list
> RLUG at lists.lug.ro
> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
>
>



More information about the RLUG mailing list