Toon posts:

[bash] dubbele conditionals

Pagina: 1
Acties:

Verwijderd

Topicstarter
in bash kan ik vrij simpel dit doen:
code:
1
2
3
if [ 1 = 1 ]; them
  echo "hoi"
fi

maar als ik nou een dubbele conditional wil doen? :?...
code:
1
2
3
if [ 1 = 0 OR 1 = 1 ]; then
  echo "hoi"
fi

Dat pakt ie niet. Ook || of or pakt ie niet. ;(. Weet iemand toevallig de correcte syntax? De bash howto espreekt alleen enkelvoudige conditionals...

  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 23:01

odysseus

Debian GNU/Linux Sid

Toch niet ver genoeg gezocht denk ik :). In de Advanced Bash Scripting Howto staat het volgende, op deze pagina:
code:
1
2
3
4
5
6
if [ "$a" -eq 24 ] && [ "$b" -eq 47 ]
then
  echo "Test #1 succeeds."
else
  echo "Test #1 fails."
fi

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


  • lvh
  • Registratie: Juli 2001
  • Laatst online: 02-11-2022

lvh

if blabla them

in de eerste :P

BTW, Advanced BASH scripting guide al geprobeerd?

Verwijderd

Topicstarter
Oe, jullie zijn slim... :D.

Als we toch bezig zijn, waarom geeft dit stukje code een error "add_server: ./ircd.conf.sh[173]: cannot create : No such file or directory"? :?... (regel 173 is dus de regel 'done'). Mag een 'if' clause niet in een for loop?...
code:
1
2
3
4
5
6
7
8
9
10
11
for i in uk1.nixhelp.org eu.hub.nixhelp.org us.co.nixhelp.org; do
    if [ $i = ${preferred_server} ]; then
        add_server $i 1
    else    if [ ${preferred_server} != no ]; then
            add_server $i 2
        else    if [ ${preferred_server} != ${NIX_DNS_NAME} ]; then
                add_server $i 1
            fi
        fi
    fi
done

[edit]
eigenlijk wel flauw - ik ga zelf nog ff debuggen... Scriptje werkt bijna. *D.