#!/bin/sh - # wh - list all instances of given files in a search path # Steve Kinzler, kinzler@cs.indiana.edu, Oct 93/Apr 08 # http://www.cs.indiana.edu/~kinzler/home.html#unix path="$PATH"; glob=; bad= PATH=/bin:/usr/bin; export PATH while : do case $# in 0) break;; *) case "$1" in -p) shift; path="$1";; -g) glob=t;; --) shift; break;; -h) bad=t; break;; -*) bad=t; echo "$0: unknown option ($1)" 1>&2;; *) break;; esac shift;; esac done case "$#,$bad" in 0,*|*,?*) cat << EOF 1>&2 usage: $0 [ -p path ] [ -g ] pattern ... -p search only the given path (default $PATH) -g assume *-globs around each pattern EOF exit 1;; esac for patt do case "$glob" in ?*) patt="*$patt*";; esac for dir in `echo "$path" | tr : ' '` do eval ls -d "$dir/$patt" 2\> /dev/null | cat done done