LOOK(1) General Commands Manual LOOK(1)

lookdisplay lines beginning with a given string

look [-df] [-t termchar] string [file ...]

The look utility displays any lines in file which contain string as a prefix. As look performs a binary search, the lines in file must be sorted.

If file is not specified, the file /usr/share/dict/words is used, only alphanumeric characters are compared and the case of alphabetic characters is ignored.

The following options are available:

, --alphanum
Dictionary character set and order, i.e., only alphanumeric characters are compared.
, --ignore-case
Ignore the case of alphabetic characters.
, --terminate termchar
Specify a string termination character, i.e., only the characters in string up to and including the first occurrence of termchar are compared.

The LANG, LC_ALL and LC_CTYPE environment variables affect the execution of the look utility. Their effect is described in environ(7).

/usr/share/dict/words
the dictionary

The look utility exits 0 if one or more lines were found and displayed, 1 if no lines were found, and >1 if an error occurred.

Look for lines starting with ‘xylene’ in the file /usr/share/dict/words:

$ look xylen
xylene
xylenol
xylenyl

Same as above, but do not consider any characters in string beyond the first ‘e’. Note that -f is implicit since we are searching the default file /usr/share/dict/words:

$ look -t e xylen
Xyleborus
xylem
xylene
xylenol
xylenyl
xyletic

The original manual page stated that tabs and blank characters participated in comparisons when the -d option was specified. This was incorrect and the current man page matches the historic implementation.

The -a and --alternative flags are ignored for compatibility.

grep(1), sort(1)

A look utility appeared in Version 7 AT&T UNIX.

Lines are not compared according to the current locale's collating order. Input files must be sorted with LC_COLLATE set to ‘C’.

December 29, 2020 macOS 15.0