summaryrefslogtreecommitdiffstats
path: root/wtf
diff options
context:
space:
mode:
authorchristos <christos@NetBSD.org>2012-04-26 03:16:13 +0000
committerchristos <christos@NetBSD.org>2012-04-26 03:16:13 +0000
commit940cede220639ee92019aef50f34a7d5ff261b5d (patch)
tree341463e26f2fae8b23ab456d8f36c5cf1f0e0778 /wtf
parente923f7ffbb641291154ab66e1aa4b45e2bf300c8 (diff)
downloadbsdgames-darwin-940cede220639ee92019aef50f34a7d5ff261b5d.tar.gz
bsdgames-darwin-940cede220639ee92019aef50f34a7d5ff261b5d.tar.zst
bsdgames-darwin-940cede220639ee92019aef50f34a7d5ff261b5d.zip
use modern shell constructs
Diffstat (limited to 'wtf')
-rw-r--r--wtf/wtf83
1 files changed, 39 insertions, 44 deletions
diff --git a/wtf/wtf b/wtf/wtf
index 22bb0325..0042f8e1 100644
--- a/wtf/wtf
+++ b/wtf/wtf
@@ -1,53 +1,50 @@
#!/bin/sh
#
-# $NetBSD: wtf,v 1.16 2012/04/26 01:55:14 jschauma Exp $
+# $NetBSD: wtf,v 1.17 2012/04/26 03:16:13 christos Exp $
#
# Public domain
#
-PROGNAME=`basename $0`
+PROGNAME="$(basename "$0")"
usage() {
- echo "usage: $PROGNAME [-f dbfile] [is] <acronym>"
+ echo "Usage: $PROGNAME [-f dbfile] [is] <acronym>"
exit 1
}
-args=`getopt f: $*`
-if [ $? -ne 0 ]; then
- usage
-fi
-set -- $args
-while [ $# -gt 0 ]; do
- case "$1" in
- -f)
- acronyms="$2 $acronyms"; shift
- ;;
- --)
- shift; break
- ;;
+while getopts f: f
+do
+ case "$f" in
+ f)
+ acronyms="$OPTARG $acronyms"
+ ;;
+ *)
+ usage
+ ;;
esac
- shift
done
-if [ "$1" = "is" ] ; then
+shift "$(expr "$OPTIND" - 1)"
+
+if [ "$1" = "is" ]; then
shift
fi
-if [ $# -lt 1 ] ; then
+if [ -z "$1" ]; then
usage
fi
-if [ "$acronyms" = "" ]; then
- acronyms=${ACRONYMDB:-`ls /usr/share/misc/acronyms* 2>/dev/null`}
+if [ -z "$acronyms" ]; then
+ acronyms=${ACRONYMDB:-$(ls /usr/share/misc/acronyms* 2>/dev/null)}
fi
-if [ "$acronyms" = "" ]; then
+if [ -z "$acronyms" ]; then
echo "$PROGNAME: acronyms database not found!" >&2
exit 1
fi
-for f in $acronyms ; do
+for f in $acronyms; do
if [ ! -f $f ]; then
echo "$PROGNAME: cannot open acronyms database file \`$f'" >&2
exit 1
@@ -55,43 +52,41 @@ for f in $acronyms ; do
done
rv=0
-while [ $# -gt 0 ] ; do
+for i; do
# Search acronyms list first
- target=`echo $1 | tr '[a-z]' '[A-Z]'`
- ans=`fgrep -h $target $acronyms 2>/dev/null \
- | sed -ne "\|^$target[[:space:]]|s|^$target[[:space:]]*||p"`
- if [ "$ans" != "" ] ; then
+ target="$(echo "$i" | tr '[a-z]' '[A-Z]')"
+ ans="$(fgrep -h "$target" $acronyms 2>/dev/null \
+ | sed -ne "\|^$target[[:space:]]|s|^$target[[:space:]]*||p")"
+ if [ -n "$ans" ] ; then
echo "$target: $ans"
- shift ; continue
+ continue
fi
# Try whatis(1) next
- ans=`whatis $1 2>/dev/null`
- if [ $? -eq 0 ] ; then
+ ans="$(whatis "$i" 2>/dev/null)"
+ if [ $? -eq 0 ]; then
echo "$ans" | sort -u
- shift ; continue
+ continue
fi
# Try pkg_info(1) next
- ans=`pkg_info -qc $1 2> /dev/null`
- if [ $? -eq 0 ] ; then
- echo "$1: $ans"
- shift ; continue
+ ans="$(pkg_info -qc "$i" 2> /dev/null)"
+ if [ $? -eq 0 ]; then
+ echo "$i: $ans"
+ continue
fi
# Try querying pkgsrc's help facility next
- if [ -f ../../mk/bsd.pkg.mk ] ; then
- ans=`make help topic="$1"`
- if [ $? -eq 0 ] ; then
- echo "$1: $ans"
- shift ; continue
+ if [ -f ../../mk/bsd.pkg.mk ]; then
+ ans="$(make help topic="$i")"
+ if [ $? -eq 0 ]; then
+ echo "$i: $ans"
+ continue
fi
fi
# Give up!
- echo "$PROGNAME: I don't know what $1 means!" 1>&2
+ echo "$PROGNAME: I don't know what \`$i' means!" 1>&2
rv=1
-
- shift
done
exit $rv