Man page - getopt(1)
Packages contains this manual
- getopt(1)
- x86_64(8)
- zramctl(8)
- findfs(8)
- blockdev(8)
- ipcmk(1)
- linux64(8)
- ldattach(8)
- findmnt(8)
- unshare(1)
- uclampset(1)
- partx(8)
- lscpu(1)
- flock(1)
- fallocate(1)
- setterm(1)
- terminal-colors.d(5)
- setsid(1)
- setarch(8)
- lsns(8)
- adjtime_config(5)
- chcpu(8)
- runuser(1)
- rtcwake(8)
- rev(1)
- lsipc(1)
- blkdiscard(8)
- nsenter(1)
- whereis(1)
- dmesg(1)
- fsck(8)
- blkid(8)
- ipcs(1)
- mcookie(1)
- lsblk(8)
- readprofile(8)
- switch_root(8)
- wdctl(8)
- mountpoint(1)
- lsmem(1)
- fsfreeze(8)
- i386(8)
- pivot_root(8)
- swaplabel(8)
- scols-filter(5)
- getty(8)
- chmem(8)
- chrt(1)
- agetty(8)
- blkzone(8)
- more(1)
- choom(1)
- mkswap(8)
- wipefs(8)
- taskset(1)
- lslocks(8)
- linux32(8)
- ionice(1)
- isosize(8)
- su(1)
- rename.ul(1)
- prlimit(1)
- namei(1)
- lslogins(1)
- ipcrm(1)
- fstrim(8)
- mkfs(8)
- hardlink(1)
- sulogin(8)
- setpriv(1)
apt-get install util-linux
Available languages:
en fr es pl ja uk ro sr deManual
GETOPT
NOMSYNOPSIS
DESCRIPTION
OPTIONS
ANALYSE
SORTIE
PROTECTIONS
MODES DâANALYSE
COMPATIBILITĂ
CODES DE RETOUR
EXEMPLES
ENVIRONNEMENT
BOGUES
AUTEUR
VOIR AUSSI
SIGNALER DES BOGUES
DISPONIBILITĂ
NOM
getopt - Analyser des options de lignes de commandes (version améliorée)
SYNOPSIS
getopt optstring parameters
getopt [options] [ -- ] optstring parameters
getopt [options] -o | --options optstring [options] [ -- ] parameters
DESCRIPTION
getopt is used to break up ( parse ) options in command lines for easy parsing by shell procedures, and to check for valid options. It uses the GNU getopt (3) routines to do this.
Les paramĂštres fournis Ă getopt sont de deux types : le premier est constituĂ© des options qui modifient la façon dont getopt fera lâanalyse (les options et chaĂźne_options dans le SYNOPSIS ) et les paramĂštres Ă analyser ( paramĂštres dans le SYNOPSIS ). Le second type commence dĂšs le premier paramĂštre qui nâest pas une option ou aprĂšs la premiĂšre occurrence de « -- ». Si aucune option « -o » ou « --options » nâest prĂ©sente dans la premiĂšre partie, le premier paramĂštre de la seconde partie sera utilisĂ© comme chaĂźne dâoptions courtes.
If the environment variable GETOPT_COMPATIBLE is set, or if the first parameter is not an option (does not start with a ' - ', the first format in the SYNOPSIS ), getopt will generate output that is compatible with that of other versions of getopt (1). It will still do parameter shuffling and recognize optional arguments (see the COMPATIBILITY section for more information).
Les implĂ©mentations traditionnelles de getopt (1) ne gĂšrent pas les espaces ou autres caractĂšres spĂ©ciaux (spĂ©cifiques Ă chaque interprĂ©teur de commandes) dans les paramĂštres (options ou non). Pour rĂ©soudre ce problĂšme, cette implĂ©mentation peut produire une sortie, entre guillemets, qui doit ĂȘtre interprĂ©tĂ©e de nouveau par lâinterprĂ©teur de commandes (en gĂ©nĂ©ral avec la commande eval ). Cela permet de prĂ©server ces caractĂšres, mais vous devez appeler getopt dâune façon non compatible avec les autres versions (la deuxiĂšme ou troisiĂšme forme dans le SYNOPSIS ). Pour dĂ©terminer si cette version amĂ©liorĂ©e de getopt (1) est installĂ©e, vous pouvez utiliser lâoption spĂ©ciale de test ( -T ).
OPTIONS
-a , --alternative
Permettre aux options longues de ne commencer que par un seul « - ».
-l , --longoptions options_longues
Les options longues (plusieurs caractĂšres) Ă reconnaĂźtre. Plusieurs noms dâoption peuvent ĂȘtre fournis en une seule fois, en sĂ©parant les noms par des virgules. Cette option peut ĂȘtre fournie plusieurs fois, les options_longues se cumulent. Chaque nom dâoption dans options_longues peut ĂȘtre suivi dâun deux-points pour indiquer que lâoption attend un paramĂštre, et par deux signes deux-points pour indiquer quâelle a un paramĂštre optionnel.
-n , --name nom-de-programme
Le nom qui sera utilisé par getopt (3) pour signaler les erreurs. Notez que les erreurs de getopt (1) sont signalées comme provenant de getopt.
-o , --options options_courtes
The short (one-character) options to be recognized. If this option is not found, the first parameter of getopt that does not start with a ' - ' (and is not an option argument) is used as the short options string. Each short option character in shortopts may be followed by one colon to indicate it has a required argument, and by two colons to indicate it has an optional argument. The first character of shortopts may be ' + ' or ' - ' to influence the way options are parsed and output is generated (see the SCANNING MODES section for details).
-q , --quiet
Désactiver le signalement des erreurs par getopt (3).
-Q , --quiet-output
Ne pas produire la sortie normale. Les erreurs sont toujours remontĂ©es par getopt (3), sauf si lâoption -q est utilisĂ©e.
-s , --shell shell
Set quoting conventions to those of shell . If the -s option is not given, the BASH conventions are used. Valid arguments are currently ' sh ', ' bash ', ' csh ', and ' tcsh '.
-T , --test
VĂ©rifier si la version de getopt (1) correspond Ă cette version amĂ©liorĂ©e ou Ă une version plus ancienne. Aucune sortie nâest créée et la valeur de retour est 4. Les autres implĂ©mentations de getopt (1) (ou celle-ci si la variable dâenvironnement GETOPT_COMPATIBLE est positionnĂ©e) renverront « -- », avec une valeur de retour de 0.
-u , --unquoted
Ne pas placer la sortie entre guillemets. Remarquez que les espaces et caractĂšres spĂ©ciaux (pour lâinterprĂ©teur de commandes utilisĂ©) peuvent poser des problĂšmes dans ce mode (comme pour les autres implĂ©mentations de getopt (1)).
-h , --help
Afficher lâaide-mĂ©moire puis quitter.
-V , --version
Afficher la version et quitter.
ANALYSE
Cette section indique le format de la seconde partie des paramÚtres de getopt ( paramÚtres dans le SYNOPSIS ). La section suivante ( SORTIE ) décrit la sortie renvoyée. Ces paramÚtres sont généralement ceux fournis à une fonction shell. Il faut faire attention à ce que chaque paramÚtre fourni à la fonction corresponde bien à un paramÚtre de la liste des paramÚtres de getopt (consultez EXEMPLES ). Toutes les analyses sont faites en utilisant les routines de GNU getopt (3).
Les paramĂštres sont analysĂ©s de la gauche vers la droite. Chaque paramĂštre est classĂ© en option courte, option longue, argument dâune option ou paramĂštre nâĂ©tant pas une option.
Une option courte est un « - » suivi par le caractĂšre de lâoption. Si lâoption a un paramĂštre obligatoire, il peut ĂȘtre indiquĂ© juste aprĂšs le caractĂšre de lâoption ou comme paramĂštre suivant (câest-Ă -dire en les sĂ©parant par une espace). Si lâoption a un paramĂštre optionnel, il doit ĂȘtre Ă©crit juste aprĂšs le caractĂšre de lâoption (quand le paramĂštre est prĂ©sent).
Il est possible dâindiquer plusieurs options courtes aprĂšs un « - », tant que toutes les options (sauf peut-ĂȘtre la derniĂšre) nâont pas de paramĂštre obligatoire ou optionnel.
Une option longue commence normalement par « -- », suivi par le nom de lâoption longue. Si lâoption nĂ©cessite un paramĂštre, celui-ci peut ĂȘtre indiquĂ© juste aprĂšs le nom de lâoption, en insĂ©rant le caractĂšre « = » entre, ou il peut ĂȘtre indiquĂ© dans le paramĂštre suivant (câest-Ă -dire en le sĂ©parant par une espace). Si lâoption a un paramĂštre optionnel, il doit ĂȘtre indiquĂ© juste aprĂšs le nom de lâoption, en insĂ©rant le caractĂšre « = » entre, si le paramĂštre est prĂ©sent (quand vous ajoutez le caractĂšre « = » sans rien derriĂšre, câest comme si le paramĂštre nâĂ©tait pas prĂ©sent ; câest un bogue mineur, consultez la section BOGUES ). Les options longues peuvent ĂȘtre abrĂ©gĂ©es, tant que lâabrĂ©viation nâest pas ambiguĂ«.
Chaque paramĂštre ne commençant pas par un « - » et nâĂ©tant pas un paramĂštre obligatoire est un « paramĂštre nâĂ©tant pas une option ». Chaque paramĂštre situĂ© aprĂšs un « -- » est toujours interprĂ©tĂ© comme un « paramĂštre nâĂ©tant pas une option ». Si la variable dâenvironnement POSIXLY_CORRECT est positionnĂ©e, ou si la chaĂźne des options courtes commence par un « + », tous les paramĂštres suivant le premier paramĂštre nâĂ©tant pas une option sont interprĂ©tĂ©s comme des paramĂštres nâĂ©tant pas des options.
SORTIE
La sortie est gĂ©nĂ©rĂ©e pour chaque Ă©lĂ©ment dĂ©crit dans la section prĂ©cĂ©dente. Elle reprend lâordre des Ă©lĂ©ments indiquĂ©s en entrĂ©e, Ă lâexception des paramĂštres nâĂ©tant pas des options. La sortie peut ĂȘtre faite dans un mode compatible ( non protĂ©gĂ© : sans guillemets) ou de telle sorte que les espaces ou autres caractĂšres spĂ©ciaux des paramĂštres soient prĂ©servĂ©s (consultez PROTECTIONS ). Quand la sortie est utilisĂ©e dans un script shell, elle paraĂźtra composĂ©e dâĂ©lĂ©ments distincts qui peuvent ĂȘtre traitĂ©s un par un (en utilisant la commande shift de la plupart des langages de script). Ce nâest pas parfait dans le mode non protĂ©gĂ© parce que les Ă©lĂ©ments peuvent ĂȘtre coupĂ©s Ă des endroits non prĂ©vus sâils contiennent des espaces ou des caractĂšres spĂ©ciaux.
En cas de problĂšme lors de lâanalyse des paramĂštres, par exemple si un paramĂštre obligatoire nâest pas trouvĂ© ou si une option nâest pas reconnue, une erreur est renvoyĂ©e sur la sortie dâerreur standard. Les Ă©lĂ©ments incriminĂ©s ne seront pas affichĂ©s et un code dâerreur non nul est renvoyĂ©.
Pour une option courte, un seul « - » et le caractĂšre de lâoption sont gĂ©nĂ©rĂ©s comme un paramĂštre. Si lâoption est suivie de son paramĂštre, le paramĂštre suivant de la sortie sera le paramĂštre de lâoption. Si lâoption accepte un paramĂštre optionnel, mais quâaucun nâa Ă©tĂ© trouvĂ©, un paramĂštre vide sera gĂ©nĂ©rĂ© dans le mode protĂ©gĂ©, mais aucun dans le mode non protĂ©gĂ© (ou mode compatible). Notez que beaucoup dâautres implĂ©mentations de getopt (1) ne gĂšrent pas les paramĂštres optionnels.
Si plusieurs options courtes ont été précisées aprÚs un unique « - », chacune sera présente dans la sortie dans un paramÚtre distinct.
Pour une option longue, « -- » et le nom complet de lâoption sont gĂ©nĂ©rĂ©s en un seul paramĂštre. Câest le cas que lâoption soit abrĂ©gĂ©e ou quâelle soit indiquĂ©e avec un seul « - » dans lâentrĂ©e. Les paramĂštres sont traitĂ©s comme pour les options courtes.
Normalement, aucun paramĂštre nâĂ©tant pas une option nâest gĂ©nĂ©rĂ© sur la sortie tant que toutes les options et leurs paramĂštres nâont pas Ă©tĂ© traitĂ©s. Ensuite, « -- » est gĂ©nĂ©rĂ© sĂ©parĂ©ment comme un paramĂštre, et est suivi des paramĂštres nâĂ©tant pas des options, dans lâordre oĂč ils ont Ă©tĂ© trouvĂ©s, chacun comme un paramĂštre distinct. Si le premier caractĂšre de la chaĂźne des options courtes est un « - », et seulement dans ce cas, les paramĂštres nâĂ©tant pas des options sont gĂ©nĂ©rĂ©s quand ils sont trouvĂ©s dans lâentrĂ©e (ce nâest pas gĂ©rĂ© si la premiĂšre forme du SYNOPSIS est utilisĂ©e ; dans ce cas, les « - » et « + » de tĂȘte sont ignorĂ©s).
PROTECTIONS
Dans le mode compatible, les espaces et caractĂšres spĂ©ciaux dans les paramĂštres des options ou les paramĂštres nâĂ©tant pas des options ne sont pas gĂ©rĂ©s correctement. Comme la sortie est envoyĂ©e Ă un script shell, le script ne sait pas comment il doit sĂ©parer les paramĂštres. Pour Ă©viter ce problĂšme, cette implĂ©mentation propose un mode protĂ©gĂ©. LâidĂ©e est de gĂ©nĂ©rer la sortie avec des protections (Ă lâaide de guillemets) autour des paramĂštres. Quand cette sortie est envoyĂ©e de nouveau Ă un interprĂ©teur de commandes (gĂ©nĂ©ralement en utilisant la commande eval de lâinterprĂ©teur), le dĂ©coupage en paramĂštres est correct.
La protection nâest pas activĂ©e si la variable dâenvironnement GETOPT_COMPATIBLE est positionnĂ©e, si la premiĂšre forme du SYNOPSIS est utilisĂ©e ou si lâoption « -u » est trouvĂ©e.
Les conventions de protection diffĂšrent suivant les interprĂ©teurs de commandes. Vous pouvez prĂ©ciser lâinterprĂ©teur de commandes que vous utilisez avec lâoption « -s ». Les interprĂ©teurs de commandes suivants sont gĂ©rĂ©s : « sh », « bash », « csh » et « tcsh ». En fait, seuls deux types sont diffĂ©renciĂ©s : ceux utilisant les conventions de sh et ceux utilisant les conventions de csh . Il y a de grandes chances que si vous utilisez un autre langage de script, il utilise une de ces conventions.
MODES DâANALYSE
Le premier caractĂšre de la chaĂźne de description des options courtes peut ĂȘtre un « - » ou un « + » pour utiliser un mode spĂ©cial dâanalyse. Si la premiĂšre forme du SYNOPSIS est appelĂ©e, ils sont ignorĂ©s ; mais la variable dâenvironnement POSIXLY_CORRECT est toujours examinĂ©e.
Si le premier caractĂšre est un « + », ou si la variable dâenvironnement POSIXLY_CORRECT est positionnĂ©e, lâanalyse sâarrĂȘte dĂšs quâun paramĂštre nâĂ©tant pas une option est rencontrĂ© (câest-Ă -dire un paramĂštre qui ne commence pas par « - »). Aucun des paramĂštres suivants ne sera considĂ©rĂ© comme une option.
Si le premier caractĂšre est un « - », les paramĂštres qui ne sont pas des options sont placĂ©s dans la sortie Ă la position oĂč ils ont Ă©tĂ© trouvĂ©s ; normalement, ils sont tous placĂ©s Ă la fin de la sortie, juste aprĂšs le paramĂštre « B*-- » qui a Ă©tĂ© gĂ©nĂ©rĂ©. Notez que dans ce mode, le paramĂštre « --* » est encore gĂ©nĂ©rĂ©, mais il sera toujours le dernier paramĂštre.
COMPATIBILITĂ
Cette version de getopt (1) a Ă©tĂ© Ă©crite pour ĂȘtre aussi compatible que possible avec les autres versions. En gĂ©nĂ©ral, vous pouvez vous contenter de les remplacer par cette version sans aucune modification, avec mĂȘme certains avantages.
If the first character of the first parameter of getopt is not a ' - ', getopt goes into compatibility mode. It will interpret its first parameter as the string of short options, and all other arguments will be parsed. It will still do parameter shuffling (i.e., all non-option parameters are output at the end), unless the environment variable POSIXLY_CORRECT is set, in which case, getopt will prepend a ' + ' before short options automatically.
La variable dâenvironnement GETOPT_COMPATIBLE force getopt dans un mode de compatibilitĂ©. Avec Ă la fois cette variable dâenvironnement et POSIXLY_CORRECT , il sera 100 % compatible pour les programmes « difficiles ». Dâhabitude, cependant, ni lâune ni lâautre nâest nĂ©cessaire.
Dans ce mode, les « - » ou « + » de tĂȘte des options courtes sont ignorĂ©s.
CODES DE RETOUR
getopt returns error code 0 for successful parsing, 1 if getopt (3) returns errors, 2 if it does not understand its own parameters, 3 if an internal error occurs like out-of-memory, and 4 if it is called with -T .
EXEMPLES
Example scripts for (ba)sh and (t)csh are provided with the getopt (1) distribution, and are installed in /usr/share/doc/util-linux directory.
ENVIRONNEMENT
POSIXLY_CORRECT
Cette variable dâenvironnement est utilisĂ©e par getopt (3). Lorsquâelle est positionnĂ©e, lâanalyse sâarrĂȘte au premier paramĂštre nâĂ©tant ni une option ni le paramĂštre dâune option. Tous les paramĂštres restants sont Ă©galement interprĂ©tĂ©s comme des paramĂštres nâĂ©tant pas des options, quâils commencent par un « - » ou non.
GETOPT_COMPATIBLE
Forcer getopt Ă utiliser le premier format dâappel, comme indiquĂ© dans le SYNOPSIS .
BOGUES
getopt (3) can parse long options with optional arguments that are given an empty optional argument (but cannot do this for short options). This getopt (1) treats optional arguments that are empty as if they were not present.
La syntaxe nâest pas trĂšs intuitive si vous ne voulez pas dâoption courte : vous devez explicitement les dĂ©finir comme des chaĂźnes vides.
AUTEUR
Frodo Looijaard <frodo@frodo.looijaard.name>
VOIR AUSSI
bash (1), tcsh (1), getopt (3)
SIGNALER DES BOGUES
Pour signaler un bogue, utilisez le gestionnaire de bogues <https://github.com/util-linux/util-linux/issues>.
DISPONIBILITĂ
La commande getopt fait partie du paquet util-linux, elle est disponible sur lâarchive du noyau Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.