[ ..Spaceman @ 11.03.2015. 15:12 ] @
prost primer u ksh korn shellu:

HOST=server01
ssh $HOST
RESULT=`echo -e "$?"`
echo $RESULT

hocu da mi $RESULT ispise da li je server dostupan ili nije i treba da vrati vrednost 0 ako je dostupan ili vecu vrednost od nule ako je doslo do greske

kada izvrsavam komande is terminala i kada ih kucam redom onda sve radi i posle komande ssh server01, $? vraca vrednost nula. Kada to sve stavim u ksh skriptu izvrsi samo ssh server01, a komandu $? ne.
sta da ukucam posle ssh komande da mi skripta nastavi da se izvrsava?
[ neetzach @ 12.03.2015. 08:07 ] @
Ako je server dostupan, onda će ssh da otvori novi shell i dok ne izađe
iz njega neće izvršiti ostatak skripta. Mislim da ti nije najbolji
metod, ali ako baš hoćeš tako onda bolje da izvršiš: ssh $HOST exit
Ta komanda će na udaljenom serveru samo zatvoriti shell i vratiti se u
tvoj skript. Isto tako, ne moraš da se petljaš toliko sa RESULT
promenljivom, možeš jednostavno da uradiš: print $? nakon ssh-a
[ ..Spaceman @ 12.03.2015. 09:10 ] @
toooooo!

Moram da stavim rezultat u varijablu jer moram na osnovu toga jos neke provere da radim.

Hvala puno!

[ neetzach @ 12.03.2015. 09:19 ] @
U tom slučaju ti je lakše da staviš:
RESULT=$?

Gledaj da izbegneš, u meri u kojoj je to moguće, pozivanje sistemskih
komandi tamo gde možeš da koristiš interne komande samog shella. Npr.
result=$(echo $?)
To će da pozove još jedan shell proces koji će da izvrši echo itd.
Umesto da koristiš sam 'echo' imaš Kornov print koji je interni, a u
ovom slučaju, možeš direktno da dodeliš vrednost $? promenljive $result
promenljivoj.
[ ..Spaceman @ 12.03.2015. 13:47 ] @
Bravo,
nadjem na netu nesto, i onda copy/paste, pa ako radi ni ne pokusavam na bolji ili jednostavniji nacin. Greska, znam
[ ..Spaceman @ 23.03.2015. 10:34 ] @

ssh $HOST exit
CHK2=$?
if [[ $CHK2 -ge 1 ]];
then echo 'HOST:' ${HOST} ' SSH Greska ' | mail -s 'HOST SSH Greska' $MAIL_USER
fi


Treba mi jos jedan savet. U slucaju da SSH trazi password, skripta se zablokira jer ocekuje od korisnika da ukuca password.
Sta bih tu bilo naj bolje da se uradi? Da se posalje CTRL+C i onda da opet dobijem povratnu informaciju od $? ?