freebsd-skq/usr.bin
joerg 1d2b625a3d Complete rewrite, once again.
This is basically a ``C compilation'' of the former whereis.pl file,
employing the same algorithms, and aiming at being mostly
UI-compatible to the old (legally tainted) 4.3BSD whereis(1).  In
comparision, the 4.4BSD-Lite version is just another variant of
which(1) only, where in particular the option to search for source
directories is sorely missing.

While i was at it, i added two more options which i contemplated doing
long since.  -x will suppress the run of locate(1) to find sources
that could not be found otherwise, potentially saving a lot of time
(but obviously, risking to not find some sources that are well hidden
in the tree).  -q will omit the leading name of the query, so in
particular, you can now do something like:

	cd `whereis -qs ls`

I'd explicitly like to thank johan for his review which was quite a
bit more than an average review, including sending me a lot of diffs.

Reviewed by:	johan
2002-07-11 21:20:54 +00:00
..
apply Use `The .Nm utility' 2002-04-19 23:44:58 +00:00
ar Add .Pp before enumerating options 2002-04-19 23:18:18 +00:00
asa mdoc(7) police: minor markup nits. 2002-05-30 13:33:59 +00:00
at mdoc(7) police: lint. 2002-05-29 18:00:23 +00:00
awk BWK awk appears to work for world builds just fine now. We want to make 2002-05-10 20:36:21 +00:00
banner remove __P 2002-03-22 01:22:50 +00:00
basename Make it possible to have this (basename(1)) perform basename(3) on multiple 2002-06-30 13:40:35 +00:00
biff Add ability to only beep when mail arrives. 2002-07-09 02:16:49 +00:00
brandelf Fix typo in the BSD copyright: s/withough/without/ 2002-06-02 20:05:59 +00:00
bzip2 Complete bzip2-1.0.2 import. 2002-02-01 16:33:40 +00:00
c89 Remove leaf node WARNS?=2 (that mainly I added). This should 2002-02-08 22:31:43 +00:00
calendar Add my DoB 2002-07-01 16:02:05 +00:00
cap_mkdb Use `The .Nm utility' 2002-04-19 23:44:58 +00:00
catman mdoc(7) police: tidy up. 2002-05-30 13:39:43 +00:00
chat Remove GCC-specific flags. 2002-04-28 13:53:38 +00:00
checknr Use `The .Nm utility'. Introduce options with well known sentence. 2002-04-19 23:23:28 +00:00
chflags Reorder for style. 2002-04-28 13:54:45 +00:00
chkey Use `The .Nm utility' 2002-04-19 23:44:58 +00:00
chpass Consistently use FBSDID 2002-06-30 05:25:07 +00:00
cksum Consistently use FBSDID 2002-06-30 05:25:07 +00:00
cmp No need to check for "-" explicitly in getopt() loop. 2002-06-07 02:35:21 +00:00
col Sort options in Description section. 2002-06-04 09:17:30 +00:00
colcrt Use `The .Nm utility' 2002-04-19 23:44:58 +00:00
colldef Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
colrm Use `The .Nm utility' 2002-04-19 23:44:58 +00:00
column remove __P 2002-03-22 01:22:50 +00:00
comm Add a History section. comm(1) appeared in V4. 2002-05-28 09:35:30 +00:00
compile_et
compress mdoc(7) police: lint. 2002-05-29 18:12:21 +00:00
csplit Avoid truncating filenames with snprintf(). 2002-06-29 05:31:26 +00:00
ctags Document conformance to IEEE Std 1003.1-2001. 2002-05-30 12:13:18 +00:00
cut Consistently use FBSDID 2002-06-30 05:34:21 +00:00
dig
dirname Consistently use FBSDID 2002-06-30 05:25:07 +00:00
dnskeygen
dnsquery
doscmd More consistancy. file system > filesystem 2002-05-16 02:19:14 +00:00
du Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ee Reimplemented bsd.nls.mk using bsd.files.mk and bsd.links.mk. 2002-07-02 12:37:09 +00:00
elf2aout Set NO_WERROR to ignore the following warning which is emitted on 2002-07-11 18:06:09 +00:00
enigma Consistently use FBSDID 2002-06-30 05:25:07 +00:00
env Discourage use of env(1)'s "-" flag by moving its description to the 2002-06-28 09:23:39 +00:00
expand Consistently use FBSDID 2002-06-30 05:25:07 +00:00
false Consistently use FBSDID 2002-06-30 05:25:07 +00:00
fetch Reorder LDADD to fix static linking. 2002-06-12 12:46:50 +00:00
file Use `The .Nm utility' 2002-04-19 23:44:58 +00:00
file2c Consistently use FBSDID 2002-06-30 05:25:07 +00:00
find Indicate that the semicolon that terminates argument lists should be in 2002-06-26 08:03:54 +00:00
finger Add -g option, which restricts printing of the gecos fields to just the user's 2002-07-02 08:00:20 +00:00
fmt Consistently use FBSDID 2002-06-30 05:25:07 +00:00
fold Only advance the column position for printable characters, update manual 2002-06-17 12:11:05 +00:00
from Minor cleanup: ANSI C function declarations, use argc after getopt(3) to check 2002-06-30 17:36:54 +00:00
fstat Consistently use FBSDID 2002-06-30 05:25:07 +00:00
fsync Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ftp Update for lukemftp-1.6-beta2. 2002-06-15 09:42:17 +00:00
gcore Consistently wrap CSRG SCM ID. 2002-06-30 09:24:25 +00:00
gencat Use mkstemp(3) to avoid /tmp race. 2002-05-29 14:23:10 +00:00
getconf Consistently use FBSDID 2002-06-30 05:25:07 +00:00
getopt Consistently use FBSDID 2002-06-30 05:25:07 +00:00
gprof Consistently use FBSDID 2002-06-30 05:25:07 +00:00
head Consistently use FBSDID 2002-06-30 05:25:07 +00:00
hesinfo Consistently use FBSDID 2002-06-30 05:25:07 +00:00
hexdump Consistently use FBSDID 2002-06-30 05:25:07 +00:00
host
id Consistently use FBSDID 2002-06-30 05:25:07 +00:00
indent Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ipcrm Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ipcs Consistently use FBSDID 2002-06-30 05:25:07 +00:00
join Consistently use FBSDID 2002-06-30 05:25:07 +00:00
jot Don't depend on pollution in <limits.h> for the definition of 2002-07-05 15:58:27 +00:00
kdump Consistently use FBSDID 2002-06-30 05:25:07 +00:00
kenv Consistently use FBSDID 2002-06-30 05:25:07 +00:00
keylogin Consistently use FBSDID 2002-06-30 05:25:07 +00:00
keylogout Consistently use FBSDID 2002-06-30 05:25:07 +00:00
killall Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ktrace Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ktrdump Added missing DPADD detected by ``make checkdpadd''. 2002-06-06 11:30:57 +00:00
lam Back out my minorly disputed and possibly not well thought out changes to how 2002-07-01 18:03:30 +00:00
last Consistently use FBSDID 2002-06-30 05:25:07 +00:00
lastcomm Consistently use FBSDID 2002-06-30 05:25:07 +00:00
ldd Fix a tiny bug in shlib support of ldd(1); if dlopen(lib, RTLD_TRACE) 2002-05-17 17:06:56 +00:00
leave Consistently use FBSDID 2002-06-30 05:25:07 +00:00
less Update for less v371 2002-01-07 20:37:33 +00:00
lessecho
lesskey
lex Consistently use FBSDID 2002-06-30 05:25:07 +00:00
limits Consistently use FBSDID 2002-06-30 05:25:07 +00:00
locate Fix grammar in 1 sentence 2002-07-02 21:13:15 +00:00
lock Correct a comment: Typing in the root password at the "Key:" prompt 2002-07-10 04:05:33 +00:00
lockf Consistently use FBSDID 2002-06-30 05:25:07 +00:00
logger Consistently use FBSDID 2002-06-30 05:25:07 +00:00
login Simplify TERM handling since now libutil not overwrites existen TERM for "term" 2002-06-28 22:56:31 +00:00
logname Consistently use FBSDID 2002-06-30 05:25:07 +00:00
look Consistently use FBSDID 2002-06-30 05:25:07 +00:00
lorder Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
lsvfs Consistently use FBSDID 2002-06-30 05:25:07 +00:00
m4 Whitespace fixes to line-up EOL escapes whose right-most extraints changed in 2002-06-20 11:17:46 +00:00
mail Consistently use FBSDID 2002-06-30 05:25:07 +00:00
make Fix a bug fixed by NetBSD in revision 1.42 of parse.c by christos which caused 2002-06-20 19:51:13 +00:00
makewhatis Remove a debug output statement. 2002-07-07 15:29:00 +00:00
mesg Consistently use FBSDID 2002-06-30 05:25:07 +00:00
minigzip Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
mkdep Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
mkfifo Consistently use FBSDID 2002-06-30 05:25:07 +00:00
mklocale Declarations cleanup; make sure externs are in a common header. 2002-04-28 12:34:54 +00:00
mkstr warns fixes; ANSIfy, deregister, constify. 2002-04-28 12:28:41 +00:00
mktemp Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
msgs mdoc(7) police: removed unnecessary .Ns. 2002-05-30 05:52:19 +00:00
mt Add definitions for the industry-standard DLT density codes. 2002-07-09 11:26:09 +00:00
ncal Correct History: cal(1) appeared in V5, not V6. 2002-06-03 15:02:02 +00:00
ncplist Style fixes; whitespace and header order. 2002-04-28 12:21:31 +00:00
ncplogin Fix VCS inclusion and tidy up #includes. 2002-04-28 12:19:30 +00:00
netstat fixed typo. 2002-07-03 06:48:12 +00:00
newgrp mdoc(7) police: one minor change that was not probably worth a commit. 2002-05-30 13:57:35 +00:00
newkey ANSIfy, VCS inclusions and some very minor style. 2002-04-28 12:09:33 +00:00
nfsstat Replace /kernel with /boot/kernel/kernel. 2002-05-09 11:47:42 +00:00
nice Document the fairly obvious effect of the PATH environment variable. 2002-06-23 11:49:08 +00:00
nl The XCU issue 5 requirement of accepting the file operand intermingled 2002-05-27 06:53:54 +00:00
nm Fix some easy warnings; ANSIfy, constify. 2002-04-28 12:04:20 +00:00
nohup Refer to utilities, not commands, for consistency with env(1), nice(1), etc. 2002-06-28 09:34:46 +00:00
objformat Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
opieinfo Add opie lib dir to includes list 2002-01-03 21:20:29 +00:00
opiekey Add opie lib dir to includes list 2002-01-03 21:20:29 +00:00
opiepasswd Add opie lib dir to includes list 2002-01-03 21:20:29 +00:00
pagesize Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
passwd #include <stdlib.h> for exit(3) prototype. 2002-05-11 03:18:14 +00:00
paste paste(1) appeared at least as early as 32v. 2002-06-11 08:13:03 +00:00
pathchk When stat(2) fails, put the name of the component it failed on in the 2002-06-10 10:03:46 +00:00
perl Install a "perl5.6.1" wrapper. I think this is going too far as now 2002-06-07 18:55:42 +00:00
pr Make egetopt() return -1 not EOF, as getopt(3) do. 2002-06-23 20:42:30 +00:00
printenv Document the fairly obvious effects of the PATH environment variable. 2002-06-28 09:31:03 +00:00
printf Fix duplicate % in %b format introduced in rev 1.22. 2002-06-19 09:42:20 +00:00
quota Call getmntinfo with MNT_NOWAIT to avoid hanging if any NFS servers 2002-06-03 12:06:49 +00:00
ranlib ANSIfy functions, and move extern declarations into a shared header 2002-04-28 11:59:43 +00:00
renice Add Standards section. 2002-06-17 13:37:31 +00:00
rev remove __P 2002-03-22 01:33:25 +00:00
rlogin Use POSIX macros for wait(2)-style status information instead of the 2002-06-03 23:13:11 +00:00
rpcgen Back out part of previous commit - K&R doesn't have const. 2002-05-09 11:24:58 +00:00
rpcinfo Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
rs Contrary to what the comments said, rs -H did not recycle storage, it just 2002-06-07 07:08:06 +00:00
rsh Use <paths.h> rather than "pathnames.h", and fix a couple of whitespace nits. 2002-05-08 00:47:01 +00:00
rup Style only; format function declarations, sort header includes, and 2002-04-28 10:49:15 +00:00
ruptime Use __FBSDID(), ANSIfy headings, use const/unsigned in minor but 2002-04-28 10:56:09 +00:00
rusers Trivial warnings fixes; staticise and use unsigned. 2002-04-28 11:13:20 +00:00
rwall Revert/fix the most controversial parts of the last commit: 2002-03-07 14:11:41 +00:00
rwho Modernise; ISOify, use __FBSDID(), use headers instead of hand-declaring. 2002-07-01 16:40:33 +00:00
sasc remove __P 2002-03-22 01:42:45 +00:00
script Use POSIX macros for wait(2)-style status information instead of the 2002-06-03 23:13:11 +00:00
sed Make cspace()'s second argument const. Make `escapes' in lputs() const. 2002-07-08 06:00:55 +00:00
shar mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 14:16:33 +00:00
showmount More consistancy. file system > filesystem 2002-05-16 02:19:14 +00:00
size Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
smbutil Add bmake glue for src/contrib/smbfs and connect userland smbfs 2001-12-14 11:41:22 +00:00
sockstat Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
soelim Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
split Remove <sys/types> where we use <sys/param> already. 2002-06-15 11:03:28 +00:00
stat Virgin import of NetBSD's stat(1) 2002-06-06 19:27:17 +00:00
strings Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
strip Do not override the `install' target. 2002-04-29 10:28:11 +00:00
su Remove tcsetpgrp() stuff across suspend/continue because it cause upper level 2002-07-09 19:11:12 +00:00
symorder Replace /kernel with /boot/kernel/kernel. 2002-05-09 11:47:42 +00:00
systat debug.{numvnodes,freevnodes} moved to vfs. 2002-06-06 23:01:50 +00:00
tabs Note that this appeared at least as early as PWB UNIX. 2002-06-10 22:59:59 +00:00
tail Note that this appeared at least as early as PWB UNIX. 2002-06-10 22:59:59 +00:00
talk nroff and pr no longer try to disallow messages. 2002-06-08 10:19:07 +00:00
tconv Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
tcopy Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
tee Use err instead of errx when malloc fails. "malloc" is not a helpful 2002-07-05 09:28:13 +00:00
telnet Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
tftp mdoc(7) police: markup nits. 2002-05-30 06:18:53 +00:00
time Document the fairly obvious effects of the PATH environment variable. 2002-06-28 09:31:03 +00:00
tip More consistancy. file system > filesystem 2002-05-16 02:19:14 +00:00
top remove __P 2002-03-22 01:42:45 +00:00
touch remove __P 2002-03-22 01:42:45 +00:00
tput Sort sections. 2002-06-15 08:41:12 +00:00
tr Use err instead of errx when malloc fails. "malloc" is not a helpful 2002-07-05 09:28:13 +00:00
true A function which takes no arguments has an argument list spelled (void) in the 2002-06-20 05:35:40 +00:00
truncate remove __P 2002-03-22 01:42:45 +00:00
truss OOPS! rev 1.16 accidently changed the default outfile from stderr to 2002-05-16 21:58:57 +00:00
tset Clean up malloc(3)'s argument. Remove casts which do nothing when we're 2002-05-17 05:11:07 +00:00
tsort Style nit: group together optional flags under the one Fl macro. 2002-06-07 01:17:54 +00:00
tty A space between switch and open-paren. Don't explicitly cast the value 2002-05-29 17:12:30 +00:00
uac Fix typo in the BSD copyright: s/withough/without/ 2002-06-02 20:05:59 +00:00
ul Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
uname Note that this appeared at least as early as PWB UNIX. 2002-06-10 22:59:59 +00:00
unexpand Allow <blank>s to be used to separate tab stop positions with the -t 2002-06-15 10:16:39 +00:00
unifdef Character 0 is nul not null. 2002-05-30 11:42:44 +00:00
uniq Correct the History section; uniq(1) appeared at least as early as V3. 2002-07-05 09:44:47 +00:00
units The rate between EUR and USD has never been as large as our old value 2002-07-09 08:47:03 +00:00
unvis Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
usbhidctl Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
users Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
uudecode Synch usage() and manpage for b64encode/b64decode. 2002-05-19 11:22:54 +00:00
uuencode Fix a late-night buglet in MLINKS ordering. 2002-05-19 20:39:42 +00:00
uuidgen mdoc(7) police: kill hard sentence breaks. 2002-05-30 14:10:44 +00:00
vacation Update build infrastructure for sendmail 8.12. 2002-02-17 22:05:07 +00:00
vgrind Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
vi Remove Perl and TCL/TK bits, neither of which are in the base system 2002-05-18 14:27:17 +00:00
vis Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
vmstat Replace /kernel with /boot/kernel/kernel. 2002-05-09 11:47:42 +00:00
w ANSI style function declarations. 2002-06-07 01:41:54 +00:00
wall Note that this appeared at least as early as PWB UNIX. 2002-06-10 22:59:59 +00:00
wc When counting words, check the correct character variable to see whether it's 2002-06-16 06:04:43 +00:00
what Document standards conformance. 2002-05-29 13:45:16 +00:00
whereis Complete rewrite, once again. 2002-07-11 21:20:54 +00:00
which Handle relative and absolute pathnames (anything with a `/' in it) in the same 2002-06-30 06:02:39 +00:00
who Style: put static qualifier on definition of static functions. 2002-06-20 07:36:22 +00:00
whois Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
window Use POSIX macros for wait(2)-style status information instead of the 2002-06-03 23:13:11 +00:00
write Use getopt() to reject any options and skip "--" arguments. 2002-05-29 13:14:51 +00:00
xargs Declare environ as char **environ like in environ(7), not char *environ[]. 2002-07-01 03:21:05 +00:00
xinstall Start the (overdue) de-orbit sequence for the -d -C combo, 2002-06-05 17:37:48 +00:00
xlint #include <sys/time.h> before <sys/stat.h> to get timespec. 2002-06-21 09:23:12 +00:00
xstr Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
yacc Use the constants from <limits.h> for the sizes of integral C types 2002-06-11 11:27:20 +00:00
yes Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
ypcat Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
ypmatch Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
ypwhich Use `The .Nm utility' 2002-04-20 12:18:28 +00:00
Makefile Bring getconf back in from the cold. 2002-07-11 07:28:21 +00:00
Makefile.inc Backout -Werror protection. No need to walk all over the upcoming 2002-02-06 18:13:12 +00:00