[ burtonium @ 24.05.2003. 20:35 ] @
Pozdrav,

opet ja gnjavim ovim variablama ali nikako da nadjem. Malo mi nije jasno jer mesam sa PHP-om.


imam neki

#!/bin/sh

if b$!=="" # to ne radi!!!

#Kako napisem IF uslov: u slucaju da b nema vrednosti (prazna vrednost)?

then
nesto

else
nesto drugo

fi



#HVALA UNAPRED!
[ tOwk @ 24.05.2003. 23:16 ] @
man test

Ukratko, SH koristi veoma jednostavnu sintaksu.

Tako ti zapravo treba da uradiš:
Code:

if <komanda>
then
  # nešto

else
  # nešto drugo

fi


Komanda „test“ je najčešće linkovana sa „[“, a tada očekuje da se uslov završi sa znakom „]“.

Ono što ti tražiš je:
Code:

if [ -s $PROMENLJIVA ]; then
 # jedno
else
 # drugo
fi

[ burtonium @ 25.05.2003. 00:04 ] @
Pozdrav,

nikako da pokrenem :( Eto trebalo bi ovako da bude). Ovo je neki glupi skript koji proverava sa nslookup-om dali domen postoji ili ne, pa posto u nslookup postoji argument server, ja hocu taj argument da koristim kao opciju. Znaci ako neko ukuca

bash# ./skript.sh nesto.com

on treba da javi, dali domen postoji ili ne, ali ako ja ukucam

bash# ./skript.sh nesto.com ns.nekiDNS.com

on treba da mi vrati rezultat, plus da napise ime DNS servera za koje sam ga zamolio!

onaj $2 je opcionalan, ako ga ima upotrebi ga, ako ga nema onda samo pogleda nslookup domena.com, inace koristi i opciju server kod nslookup-a?

E ja nikako da napisem uslov za taj $2, ako je prazan, znaci "nema nista", on treba da uradi nesto, a ako ima $2 vrednost (ns.nekiDNS.com) onda on uradi onaj drugi deo skripta? sad mi samo treba kako da stavim uslov za taj $2. Ako $2 nema vrednost then blabla; else blabla nesto drugo; fi

#!/bin/sh
if
if [ -s $2]
then
nslookup -sil $1|grep "server can't find">/dev/null
b="Domena $1 obstaja!"
else
nslookup -sil $1 server $2|grep "server can't find">/dev/null
b="Domena $1 obstaja. Podatke je pregledal $2 DNS streznik!"
fi
then
echo "Domena $1 ne obstaja.!"
else
echo $b
fi


Ovo gore ne funkcionise? Neko resenje?
[ random @ 25.05.2003. 00:36 ] @
Stavi $2 u navodnike ako postoji mogućnost da bude prazna promenljiva, inače će se shell zbuniti.

Znači if "$2" == "", odnosno [ -s "$2" ]...

Rekao bih da je u tome problem.
[ burtonium @ 25.05.2003. 00:53 ] @
Hvala na idejama!

Resio sam malo drukcije poslusao predlog pa procitao

MAN test

i nasao

test -z $2

-z STRING
the length of STRING is zero
[ tOwk @ 25.05.2003. 01:13 ] @
Da, na to sam i mislio kad sam napisao „-s“ :-)

Sledeći put ću pogledati i sam „man test“ :-)
[ burtonium @ 25.05.2003. 12:04 ] @
Zdravo,

ma imas ti pravi pristup tOwk-e. Vazno da namamis coveka, pa ce sam naci odgovor :) To su prave metode za ucenje :)

Pokazes put a ne cilj ....

Malo sale ne skodi, hvala u svakom slucaju.

LP