Fórum Ubuntu CZ/SK
Ostatní => Archiv => Téma založeno: von_Tros 22 Března 2007, 00:26:43
-
Dobry den,
pouzivam Ubuntu 6.10. Zacal jsem programovat v shellu a sekl jsem se na necem, co jsem fakt necekal.
Nechce mne fungovat jednoducha inkrementace. Kdyz to pisu postupne do terminalu, tak vse funguje, ale jakmile to sepisu vse do jednoho souboru(test.sh) a spustim, tak to pise, ze nenalezl prikaz "let".
BTW nenarazil jsem zatim na nic jineho, co by me nefungovalo, krom problemu s promennyma....
a jinak kdyz jsem uvedeny kod, zkousel bez (#!/bin/sh) tak to na jinych OS fungovalo, doufam ze ted tady nemam preklep. #!/bin/bash jsem taky zkousel.
sh test.sh
#!/bin/sh
x=0
echo $x
let "x=x+1"
echo $x
vypise mne to:
0
test.sh: 4: let: not found
0
v pripade:
#!/bin/sh
x=0
echo $x
((x=x+))
echo $x
to vypise:
0
0
Dekuji za radu ci odkaz - jestli uz to tady bylo reseno, ale hledal jsem a nic jsem nenasel krom zmen #!/bin/sh #!/bin/bash. ;-)
-
A co to napsat takhle pro sh(funguje i v bash):
#!/bin/sh
x=0
x=$(($x+1))
echo $xTo by melo fungovat jak v sh, tak v bashi.
Jinak let mi na Ubuntu jede jenom v bashi. Kdyz jsem zkousel na BSD, tak tam s podivem v bash i v sh. Jsem z toho dost zmateny. Zrejme jine verze
-
Dik, tohle uz funguje, ale netusim, proc to moje nefunguje :/