\chapter{Gestione di parametri e opzioni}
+\label{cha:parameter_options}
Il passaggio dei parametri e delle variabili di ambiente dalla riga di comando
al singolo programma quando viene lanciato è effettuato attraverso le
\end{verbatim}
\section{Il formato dei parametri}
-
+\label{sec:par_format}
Il passaggio dei parametri al programma viene effettuato dalla shell, che si
incarica di leggere la linea di comando e di effettuarne la scansione (il
cosiddetto \textit{parsing}) per individuare le parole che la compongono,
questo modo il primo parametro è sempre il nome del programma (vedi \nfig).
\section{La gestione delle opzioni}
+\label{sec:opt_handling}
In generale un programma unix riceve da linea di comando sia i parametri che
le opzioni, queste ultime sono standardizzate per essere riconosciute come
In \nfig è mostrato un programma di esempio,
+
\begin{figure}[htbp]
- \begin{center}
- \begin{verbatim}
+ \footnotesize
+ \begin{lstlisting}{}
opterr = 0; /* don't want writing to stderr */
while ( (i = getopt(argc, argv, "o:a:i:hve")) != -1) {
switch (i) {
}
}
debug("Optind %d, argc %d\n",optind,argc);
- \end{verbatim}
- \caption{Esempio di codice per la gestione delle opzioni.}
- \label{fig:options_code}
- \end{center}
+ \end{lstlisting}
+ \caption{Esempio di codice per la gestione delle opzioni.}
+ \label{fig:options_code}
\end{figure}
\subsection{Opzioni in formato esteso}
+\label{sec:opt_extended}
Un'estensione di questo schema è costituito dalle cosiddette
\textit{long-options} espresse nella forma \texttt{--option=parameter}, anche
\section{Le variabili di ambiente}
+\label{sec:par_env_var}
+
Questo va fatto.