According to research by an OpenBSD committer, the `apropos` command appeared in 2BSD and was written by Bill Joy, like the rest of the `man` implementation. There's a theory floating around that `apropos` started out as an alias to `man -k`, but `man` in 2BSD didn't have a `-k` option, so it was presumably the other way round (ATT Research Unix had no `apropos` and a different meaning for `man -k`). So 2BSD `apropos.c` would be the earliest implementation of `apropos`.