1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
|
.\" {PTM/PB/0.1/02-10-1998/"analizuj opcje linii komend"}
.\" Translation (c) 1998 Przemek Borys <pborys@p-soft.silesia.linux.org.pl>
.Dd June 21, 1993
.Dt GETOPT 1
.Os
.Sh NAZWA
.Nm getopt
.Nd analizuj opcje linii komend
.Sh SKADNIA
.Nm set \-\- \`getopt optstring $*\`
.Sh OPIS
.Nm Getopt
jest uywany do rozbijania opcji w liniach komend dla atwej analizy przez
procedury powokowe i do sprawdzania istnienia opcji legalnych.
.Op Optstring
jest cigniem rozpoznawalnych liter opcyjnych (zobacz
.Xr getopt 3
);
jeli po literze nastpuje dwukropek, opcja ma w domyle argument, ktry moe,
lecz nie musi by oddzielony od niej bia spacj.
Opcja specjalna \fB--\fP
uywana jest do wskazania koca opcji.
Jeli symbolu \fB\-\-\fP nie wstawiono w cig opcji jawnie,
.Nm getopt
podstawia automatycznie ten znak na samym kocu opcji.
Argumenty powokowe
(\fB$1 $2\fR ...) s resetowane tak, e kada opcja jest poprzedzona znakiem
\fB\-\fP
i w swoim wasnym argumencie powokowym; kady argument opcyjny jest take w
swoim wasnym argumencie powokowym.
.Sh PRZYKAD
Nastpujcy fragment kodu pokazuje jak mona przetworzy arumenty komendy,
ktra moe pobiera opcje
.Op a
i
.Op b ,
a take opcj
.Op o ,
ktra wymaga argumentu.
.Pp
.Bd -literal -offset indent
set \-\- \`getopt abo: $*\`
if test $? != 0
then
echo 'Uycie: ...'
exit 2
fi
for i
do
case "$i"
in
\-a|\-b)
flag=$i; shift;;
\-o)
oarg=$2; shift; shift;;
\-\-)
shift; break;;
esac
done
.Ed
.Pp
Kod ten przyjmie dowone opcje z nastpujcych jako identyczne:
.Pp
.Bd -literal -offset indent
cmd \-aoarg plik plik
cmd \-a \-o arg plik plik
cmd \-oarg -a plik plik
cmd \-a \-oarg \-\- plik plik
.Ed
.Sh ZOBACZ TAKE
.Xr sh 1 ,
.Xr getopt 3
.Sh DIAGNOSTYKA
.Nm Getopt
drukuje wiadomo o bdzie, jeli napotka liter opcyjn niezaczon w
napisie
.Op optstring .
.Sh HISTORIA
Napisane przez Henry'ego Spencera, pracujcego na podstawie strony man Bell
Labs. Zachowanie powinno by identyczne jak w wersji Bell.
.Sh BDY
Takie same jak w
.Xr getopt 3 .
.Pp
Arugmenty zawierajce biae spacje, lub zaczone metaznaki powoki nie
przeyj nienaruszone; wyglda to na atwy do naprawienia bd, lecz tak nie
jest.
.Pp
Wiadomo o bdzie dla nieprawidowej opcji jest wskazywana jako pochodzca
z programu
.Nm getopt
a nie z procedury powokowej, zawierajcej wywoanie
.Nm getopt ;
jest to znowu trudne do naprawienia.
.Pp
Najlepsza droga, czyli
.Nm set
, do ustawiania argumentw bez rozrywania wartoci opcji powokowych zmienia
si z jednej wersji powoki na inn.
|