Я получаю это сообщение об ошибке при попытке запуска man
в системе Linux:
$ LC_ALL=C man man
man: Too many arguments
Try 'man --help' or 'man --usage' for more information.
Моя man
команда не выглядит псевдонимом:
command -v man: /usr/bin/man
В чем дело?
man
псевдоним? Проверьте с помощьюtype man
илиcommand -v man
.C
. В этом нет ничего странного.Ответы:
Проверьте наличие
MANOPT
переменной.источник
Пример:
Очевидное специальное решение - это
unset MANOPT
. Затем вы должны выяснить, откуда взялась переменная.источник
Too many arguments
? Как если бы яexport MANOPT=foo
, почему это не говоритNo manual entry for foo
?man
, вероятно, разделяетсяMANOPT
на пробелы, а затем запускает результирующий массивgetopt(3)
и жалуется, если остались какие-либо неопциональные аргументы (т.е. аргументы, не начинающиеся с тире). Они могли бы использовать лучшее сообщение об ошибке. В любом случае, даже один аргумент слишком много для него: попробуйтеMANOPT=man man man
.