Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
On 06/29/2018 05:19 PM, Petru Rațiu wrote: ssh iti mananca STDIN. Fie il rulezi cu -n fie muti while-ul ala pe alt descriptor gen 3, cum zice nenea asta: https://stackoverflow.com/a/28837793 (de notat ca n-am testat, ideea pare corecta). Multumesc tuturor! intre timp am gasit solutia (si problema cu stdin) si eu dar nu am apucat sa pun pe lista :) Adrian ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
Salut. https://stackoverflow.com/questions/9393038/ssh-breaks-out-of-while-loop-in-bash "ssh -n" Spor. - Original Message - From: "Adrian Sevcenco" To: rlug@lists.lug.ro Sent: Friday, June 29, 2018 5:04:37 PM Subject: Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh 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/xrddata/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 > 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@lists.lug.ro >> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro >> >> > ___ > RLUG mailing list > RLUG@lists.lug.ro > http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro > ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
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 : > 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 > > >> 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@lists.lug.ro >>> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro >>> >>> >>> ___ >> RLUG mailing list >> RLUG@lists.lug.ro >> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro >> >> > > > ___ > RLUG mailing list > RLUG@lists.lug.ro > http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro > > ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
Ai incercat cu ssh -n ? 2018-06-29 16:04 GMT+02:00 Adrian Sevcenco : > 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 > > >> 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@lists.lug.ro >>> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro >>> >>> >>> ___ >> RLUG mailing list >> RLUG@lists.lug.ro >> http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro >> >> > > > ___ > RLUG mailing list > RLUG@lists.lug.ro > http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro > > ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
ssh iti mananca STDIN. Fie il rulezi cu -n fie muti while-ul ala pe alt descriptor gen 3, cum zice nenea asta: https://stackoverflow.com/a/28837793 (de notat ca n-am testat, ideea pare corecta). -- P. On Fri, Jun 29, 2018 at 4:22 PM, Adrian Sevcenco 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@lists.lug.ro > http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro > > ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
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/xrddata/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 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@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
Re: [rlug] bash while loop :: bucla oprita daca se ruleaza ssh
Dacă îl rulezi cu bash -x ar trebui să vezi comenzile și outputurile și să îți dai seama ce se întâmplă. Posibil să nu iasă din primul ssh și de-aia să se oprească acolo... On Fri, Jun 29, 2018 at 4:22 PM, Adrian Sevcenco 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@lists.lug.ro > http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro > > ___ RLUG mailing list RLUG@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro
[rlug] bash while loop :: bucla oprita daca se ruleaza ssh
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@lists.lug.ro http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro