Getopt(1) is a program to help shell scripts parse command-line
parameters. It is for example included in the util-linux distribution
(versions up to 2.7.1) for Linux. But, there were some problems
with that getopt(1) implementation, as listed in the 'BUGS' section
of its man-page:
* Whatever getopt(3) has.
* Arguments containing white space or imbedded shell metacharacters
generally will not survive intact; this looks easy to fix but
isn't.
* The error message for an invalid option is identified as
coming from getopt rather than from the shell procedure
containing the invocation of getopt; this again is hard to
fix.
* The precise best way to use the set command to set the
arguments without disrupting the value(s) of shell options
varies from one shell version to another.
Additionally, the example in the manual-page does not run correctly
(at least not with any bash shell I have tried).
This implementation of getopt(1) solves some of these problems,
while still staying (for all practical purposes) completely compatible
with other getopt(1) implementations. It has replaced the old
util-linux version, but it should be useful for other Unixes too.
| OS | Architecture | Version |
|---|---|---|
| NetBSD 10.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | aarch64eb | getopt-1.1.6.tgz |
| NetBSD 10.0 | alpha | getopt-1.1.6.tgz |
| NetBSD 10.0 | alpha | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv4 | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv4 | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv6hf | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv6hf | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv7hf | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv7hf | getopt-1.1.6.tgz |
| NetBSD 10.0 | earmv7hf | getopt-1.1.6.tgz |
| NetBSD 10.0 | i386 | getopt-1.1.6.tgz |
| NetBSD 10.0 | i386 | getopt-1.1.6.tgz |
| NetBSD 10.0 | m68k | getopt-1.1.6.tgz |
| NetBSD 10.0 | m68k | getopt-1.1.6.tgz |
| NetBSD 10.0 | m68k | getopt-1.1.6.tgz |
| NetBSD 10.0 | mips64eb | getopt-1.1.6.tgz |
| NetBSD 10.0 | mips64eb | getopt-1.1.6.tgz |
| NetBSD 10.0 | mipsel | getopt-1.1.6.tgz |
| NetBSD 10.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 10.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 10.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 10.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 10.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 10.0 | sh3el | getopt-1.1.6.tgz |
| NetBSD 10.0 | sh3el | getopt-1.1.6.tgz |
| NetBSD 10.0 | sh3el | getopt-1.1.6.tgz |
| NetBSD 10.0 | sparc64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | sparc64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | sparc | getopt-1.1.6.tgz |
| NetBSD 10.0 | sparc | getopt-1.1.6.tgz |
| NetBSD 10.0 | vax | getopt-1.1.6.tgz |
| NetBSD 10.0 | vax | getopt-1.1.6.tgz |
| NetBSD 10.0 | x86_64 | getopt-1.1.6.tgz |
| NetBSD 10.0 | x86_64 | getopt-1.1.6.tgz |
| NetBSD 11.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 11.0 | aarch64eb | getopt-1.1.6.tgz |
| NetBSD 11.0 | earmv4 | getopt-1.1.6.tgz |
| NetBSD 11.0 | i386 | getopt-1.1.6.tgz |
| NetBSD 11.0 | m68k | getopt-1.1.6.tgz |
| NetBSD 11.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 11.0 | riscv64 | getopt-1.1.6.tgz |
| NetBSD 11.0 | sh3el | getopt-1.1.6.tgz |
| NetBSD 11.0 | vax | getopt-1.1.6.tgz |
| NetBSD 11.0 | x86_64 | getopt-1.1.6.tgz |
| NetBSD 9.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 9.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 9.0 | aarch64 | getopt-1.1.6.tgz |
| NetBSD 9.0 | alpha | getopt-1.1.6.tgz |
| NetBSD 9.0 | earmv4 | getopt-1.1.6.tgz |
| NetBSD 9.0 | earmv4 | getopt-1.1.6.tgz |
| NetBSD 9.0 | earmv6hf | getopt-1.1.6.tgz |
| NetBSD 9.0 | earmv6hf | getopt-1.1.6.tgz |
| NetBSD 9.0 | earmv7hf | getopt-1.1.6.tgz |
| NetBSD 9.0 | earmv7hf | getopt-1.1.6.tgz |
| NetBSD 9.0 | i386 | getopt-1.1.6.tgz |
| NetBSD 9.0 | i386 | getopt-1.1.6.tgz |
| NetBSD 9.0 | m68k | getopt-1.1.6.tgz |
| NetBSD 9.0 | m68k | getopt-1.1.6.tgz |
| NetBSD 9.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 9.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 9.0 | powerpc | getopt-1.1.6.tgz |
| NetBSD 9.0 | sparc64 | getopt-1.1.6.tgz |
| NetBSD 9.0 | x86_64 | getopt-1.1.6.tgz |
| NetBSD 9.0 | x86_64 | getopt-1.1.6.tgz |
| NetBSD 9.3 | x86_64 | getopt-1.1.6.tgz |
Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.
The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.
Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.
Problem reports, updates or suggestions for this package should be reported with send-pr.