Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: bash - nefunkcni prikazy (let: not found)  (Přečteno 2751 krát)

von_Tros

  • Návštěvník
  • Příspěvků: 9
  • :)
bash - nefunkcni prikazy (let: not found)
« kdy: 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. ;-)

fritzek

  • Aktivní člen
  • *
  • Příspěvků: 231
bash - nefunkcni prikazy (let: not found)
« Odpověď #1 kdy: 22 Března 2007, 01:01:28 »
A co to napsat takhle pro sh(funguje i v bash):

Kód: [Vybrat]
#!/bin/sh
x=0
x=$(($x+1))
echo $x
To 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
P4 2.94GHz / 1024MB RAM / NVidia 6600 256MB / 80GB Seagate / DVB MSI Megasky / Leadtek Winfast 2000 / LENNY
NB Centrino Duo / 1024MB RAM / Intel 945GM / Intel wifi 3945ABG / Intel ethernet 100 VE

von_Tros

  • Návštěvník
  • Příspěvků: 9
  • :)
bash - nefunkcni prikazy (let: not found)
« Odpověď #2 kdy: 22 Března 2007, 23:10:07 »
Dik, tohle uz funguje, ale netusim, proc to moje nefunguje :/

 

Provoz zaštiťuje spolek OpenAlt.