From a1f16bba72c78eca9359692e354fa35c0f3366c1 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Mon, 21 Aug 2000 22:02:34 +0000 Subject: Added getopt(1) from "Alfred M. Szmidt" -Erik --- docs/busybox.pod | 46 ++++++++++++++++++++++++++++++++++++++++++++-- docs/busybox.sgml | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+), 2 deletions(-) (limited to 'docs') diff --git a/docs/busybox.pod b/docs/busybox.pod index 916ccb6f0..4fba7eafa 100644 --- a/docs/busybox.pod +++ b/docs/busybox.pod @@ -57,7 +57,7 @@ Currently defined functions include: ar, basename, cat, chgrp, chmod, chown, chroot, chvt, clear, cp, cut, date, dc, dd, deallocvt, df, dirname, dmesg, du, dumpkmap, dutmp, echo, false, fbset, -fdflush, find, free, freeramdisk, fsck.minix, grep, gunzip, gzip, halt, +fdflush, find, free, freeramdisk, fsck.minix, getopt, grep, gunzip, gzip, halt, head, hostid, hostname, id, init, insmod, kill, killall, length, ln, loadacm, loadfont, loadkmap, logger, logname, ls, lsmod, makedevs, mkdir, mkfifo, mkfs.minix, mknod, mkswap, mktemp, more, mount, mt, mv, nc, @@ -614,6 +614,48 @@ Options: ------------------------------- +=item getopt + +Usage: getopt [OPTIONS]... + +Parse command options + +Options: + + -a, --alternative Allow long options starting with single -\n" + -l, --longoptions=longopts Long options to be recognized\n" + -n, --name=progname The name under which errors are reported\n" + -o, --options=optstring Short options to be recognized\n" + -q, --quiet Disable error reporting by getopt(3)\n" + -Q, --quiet-output No normal output\n" + -s, --shell=shell Set shell quoting conventions\n" + -T, --test Test for getopt(1) version\n" + -u, --unqote Do not quote the output\n" + +Example: + $ cat getopt.test + #!/bin/sh + GETOPT=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \ + -n 'example.busybox' -- "$@"` + if [ $? != 0 ] ; then exit 1 ; fi + eval set -- "$GETOPT" + while true ; do + case $1 in + -a|--a-long) echo "Option a" ; shift ;; + -b|--b-long) echo "Option b, argument \`$2'" ; shift 2 ;; + -c|--c-long) + case "$2" in + "") echo "Option c, no argument"; shift 2 ;; + *) echo "Option c, argument \`$2'" ; shift 2 ;; + esac ;; + --) shift ; break ;; + *) echo "Internal error!" ; exit 1 ;; + esac + done + + +------------------------------- + =item grep Usage: grep [OPTIONS]... PATTERN [FILE]... @@ -2052,4 +2094,4 @@ Enrique Zanardi =cut -# $Id: busybox.pod,v 1.61 2000/08/21 21:18:52 andersen Exp $ +# $Id: busybox.pod,v 1.62 2000/08/21 22:02:34 andersen Exp $ diff --git a/docs/busybox.sgml b/docs/busybox.sgml index 864dbe0ac..f53be8d6f 100644 --- a/docs/busybox.sgml +++ b/docs/busybox.sgml @@ -1063,6 +1063,61 @@ + + + getopt + + + Usage: getopt [OPTIONS]... + + + + Parse command options + + + + + -a, --alternative Allow long options starting with single -\n" + -l, --longoptions=longopts Long options to be recognized\n" + -n, --name=progname The name under which errors are reported\n" + -o, --options=optstring Short options to be recognized\n" + -q, --quiet Disable error reporting by getopt(3)\n" + -Q, --quiet-output No normal output\n" + -s, --shell=shell Set shell quoting conventions\n" + -T, --test Test for getopt(1) version\n" + -u, --unqote Do not quote the output\n" + + + + + + Example: + + + + + $ cat getopt.test + #!/bin/sh + GETOPT=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \ + -n 'example.busybox' -- "$@"` + if [ $? != 0 ] ; then exit 1 ; fi + eval set -- "$GETOPT" + while true ; do + case $1 in + -a|--a-long) echo "Option a" ; shift ;; + -b|--b-long) echo "Option b, argument \`$2'" ; shift 2 ;; + -c|--c-long) + case "$2" in + "") echo "Option c, no argument"; shift 2 ;; + *) echo "Option c, argument \`$2'" ; shift 2 ;; + esac ;; + --) shift ; break ;; + *) echo "Internal error!" ; exit 1 ;; + esac + done + + + grep -- cgit v1.2.3