Forum » Pomoč in nasveti » /bin/sh problem
/bin/sh problem
slovencl ::
Rad bi zvedel, če imam še vedno povezavo z internetom:
var=$(ping -c1 www.yahoo.com | grep time) # če prav razumem vrne vrednost time samo takrat, ko dobi odgovor - se pravi ko je povezan na internet
echo "$var"
if [ "$var" = 'alive' ]
then
echo "alive"
else
echo "not alive"
fi
Pri meni je rezultat vedno "not alive", tudi če spremenljivki var določim neko vrednost. Kako naj preverim, če je spremenljivka "var" prazna?
var=$(ping -c1 www.yahoo.com | grep time) # če prav razumem vrne vrednost time samo takrat, ko dobi odgovor - se pravi ko je povezan na internet
echo "$var"
if [ "$var" = 'alive' ]
then
echo "alive"
else
echo "not alive"
fi
Pri meni je rezultat vedno "not alive", tudi če spremenljivki var določim neko vrednost. Kako naj preverim, če je spremenljivka "var" prazna?
Jean-Paul ::
Poskusi tako:
#!/bin/bash
URL="www.yahoo.com"
PING="ping -c 1 -q -w 1"
if [[ $# == 1 ]];
then
URL=$1;
fi;
for i in $URL;
do
if $PING $i > /dev/null;
then
echo "$i is ALIVE";
else
echo "$i is DEAD";
fi
done
#!/bin/bash
URL="www.yahoo.com"
PING="ping -c 1 -q -w 1"
if [[ $# == 1 ]];
then
URL=$1;
fi;
for i in $URL;
do
if $PING $i > /dev/null;
then
echo "$i is ALIVE";
else
echo "$i is DEAD";
fi
done
Liker ::
#!/bin/sh
var=$(ping -c1 www.yahoo.com | grep time) # če prav razumem vrne vrednost time samo takrat, ko dobi odgovor - se pravi ko je povezan na internet
echo "$var"
if [ -z "$var" ]
then
echo "not alive"
else
echo "alive"
fi
Tole bo delovalo.
Drugace bi lahko naredil tudi trotl sistem ala if [ "$var" == "" ], to ravno tako preveri ce je $var praznen :) (a je lepse z -z operatorjem, ) seznam operatorjev.
Sicer obstaja kar nekaj lepsih nacinov, a car (ba)sh- a je ravno v tem da se da vse narediti na N nacinov :D
var=$(ping -c1 www.yahoo.com | grep time) # če prav razumem vrne vrednost time samo takrat, ko dobi odgovor - se pravi ko je povezan na internet
echo "$var"
if [ -z "$var" ]
then
echo "not alive"
else
echo "alive"
fi
Tole bo delovalo.
Drugace bi lahko naredil tudi trotl sistem ala if [ "$var" == "" ], to ravno tako preveri ce je $var praznen :) (a je lepse z -z operatorjem, ) seznam operatorjev.
Sicer obstaja kar nekaj lepsih nacinov, a car (ba)sh- a je ravno v tem da se da vse narediti na N nacinov :D
Zgodovina sprememb…
- spremenil: Liker ()
SasoS ::
ping -c 3 $GATEWAY 2>&1 >> $LOG if [ $? -gt 0 ]; then # Renew not successful, do a DHCP release ... fi
Meni to dela.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Noob se loti programiranje v BASHOddelek: Programiranje | 2270 (1670) | c3p0 |
» | PING bash?Oddelek: Programiranje | 931 (846) | ta_pravi |
» | [Bash] - težave z IF stavkiOddelek: Programiranje | 2173 (2072) | R33D3M33R |
» | Linux skriptOddelek: Programiranje | 2119 (1933) | MRB0rYS |
» | DEBIAN problemOddelek: Omrežja in internet | 1850 (1660) | AirBladE |