[linux] bash & skripty
Radoslav BENDIK
bendik na sophia.dtp.fmph.uniba.sk
Úterý Červenec 6 14:39:08 CEST 1999
On Tue, 6 Jul 1999, Ico wrote:
> Skusal som minule urobit nejaky skriptik, ktory by mi testoval pocet a
> spravnost parametrov... Ale nejako sa mi nepodarilo zistit, ako sa pise
> podmienka na test poctu parametrov alebo portu hocicoho.
Pocet parametrov skriptu je v $#. Na parsovanie parametrov je
lepsie ako 'if' pouzit 'case' a 'shift'. A uplne najlepsie je pouzit
'getopts'. Vsetko najdes v man stranke bash(1).
> Ked chcem, aby mi vypisal pocet parametrov, je to OK, ale ked to dam do
> podmienky if [...]; then... , tak mi to robi blbosti.
[ je hardlink na test. Pozri si test(1). Priklad:
if [ $# -eq 3 ]; then echo tri; fi
> Takisto by ma zaujimalo, ako sa robi for i in 1 2 3 4... bez toho, aby
> som musel vymenovat vsetky prvky. Ked to chcem napr. od 1 do 1000, tak
> je to dost nepohodlne...;-)
A co takto (aj ked to je len do 100 a tiez nie velmi pohodlne):
for i in {0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9} ; do echo $i; done
Lepsie asi bude:
i=1; while [ $i -le 1000 ]; do echo $i; let i=$i+1; done
--bye,
rado b
/----------- /""\ ---------------------------------------------------\
| /""\ / _/ e-mail Radoslav.Bendik na st.fmph.uniba.sk |
| ( (_/ / \ web http://www.st.fmph.uniba.sk/~4bendik |
| \ ado ( __/endik, absolvent TMF, MFF UK Bratislava, Slovensko |
\-- ) ---------------------------------------------------------------/
/
Další informace o konferenci linux