.\" {PTM/PB/0.1/02-10-1998/"analizuj opcje linii komend"}
.\" Translation (c) 1998 Przemek Borys <pborys@p-soft.silesia.linux.org.pl>
.Dd 21 czerwca 1993
.Dt GETOPT 1
.Os
.Sh NAZWA
.Nm getopt
.Nd analizuj opcje linii komend
.Sh SKŁADNIA
.Nm set \-\- \`getopt optstring $*\`
.Sh OPIS
\fI Uwaga! To tłumaczenie może być nieaktualne!\fP
.Pp
.Nm Getopt
jest używany do rozbijania opcji w liniach komend dla łatwej analizy przez
procedury powłokowe i do sprawdzania istnienia opcji legalnych.
.
.Op Optstring
jest ciągiem rozpoznawalnych liter opcyjnych (zobacz
.Xr getopt 3
);
jeśli po literze następuje dwukropek, opcja ma w domyśle argument, który może,
lecz nie musi być oddzielony od niej białą spacją.
Opcja specjalna \fB--\fP
używana jest do wskazania końca opcji.
Jeśli symbolu \fB\-\-\fP nie wstawiono w ciąg opcji jawnie,
.Nm getopt
podstawia automatycznie ten znak na samym końcu opcji.
.
Argumenty powłokowe
(\fB$1 $2\fR ...) są resetowane tak, że każda opcja jest poprzedzona znakiem
\fB\-\fP
i w swoim własnym argumencie powłokowym; każdy argument opcyjny jest także w
swoim własnym argumencie powłokowym.
.Sh PRZYKŁAD
Następujący fragment kodu pokazuje jak można przetworzyć argumenty komendy,
która może pobierać opcje
.Op a
i
.Op b ,
a także opcję
.Op o ,
która wymaga argumentu.
.Pp
.Bd -literal -offset indent
set \-\- \`getopt abo: $*\`
if test $? != 0
then
	echo 'Użycie: ...'
	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 dowolne opcje z następujących 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 TAKŻE
.Xr sh 1 ,
.Xr getopt 3
.Sh DIAGNOSTYKA
.Nm Getopt
drukuje wiadomość o błędzie, jeśli napotka literę opcyjną niezałączoną w
napisie
.Op optstring .
.Sh HISTORIA
Napisane przez Henry'ego Spencera, pracującego na podstawie strony man Bell
Labs. Zachowanie powinno być identyczne jak w wersji Bell.
.Sh BŁĘDY
Takie same jak w
.Xr getopt 3 .
.Pp
Argumenty zawierające białe spacje, lub załączone metaznaki powłoki nie
przeżyją nienaruszone; wygląda to na łatwy do naprawienia błąd, lecz tak nie
jest.
.Pp
Wiadomość o błędzie dla nieprawidłowej opcji jest wskazywana jako pochodząca
z programu
.Nm getopt
a nie z procedury powłokowej, zawierającej wywołanie
.Nm getopt ;
jest to znowu trudne do naprawienia.
.Pp
Najlepsza droga, czyli
.Nm set
, do ustawiania argumentów bez rozrywania wartości opcji powłokowych zmienia
się z jednej wersji powłoki na inną.
.Sh "INFORMACJE O TŁUMACZENIU"
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i 
\fImoże nie być aktualne\fR. W razie zauważenia różnic między powyższym opisem
a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie 
się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
.br
man \-\-locale=C 1 getopt
.Pp
Prosimy o pomoc w aktualizacji stron man \- więcej informacji można znaleźć pod
adresem http://sourceforge.net/projects/manpages\-pl/.
