l'uomo non funziona (troppi argomenti)


23

Ottengo questo un errore quando provo a funzionare mansu un sistema Linux:

$ LC_ALL=C man man

man: Too many arguments
Try 'man --help' or 'man --usage' for more information.

Il mio mancomando non sembra essere un alias:

command -v man: /usr/bin/man 

Cosa sta succedendo?


Qual è l'output di "alias man" o semplicemente "alias"?
rbrtflr

1
Sei manun alias? Verificare con type mano command -v man.
Kusalananda

alias ll = 'ls -l --color = auto | grep' \ '' - '\' '' alias ls = 'ls -color = auto'
NeedHelp

command -v man: / usr / bin / man
NeedHelp

1
@jayooin Sta impostando la locale predefinita sulla locale standard C. Non c'è niente di strano in quel bit.
Kusalananda

Risposte:


39

Controlla l'esistenza della MANOPTvariabile.

MANOPT
Se $MANOPTimpostato, verrà analizzato prima della manriga di comando e si prevede che abbia un formato simile.

fonte

Esempio:

$ MANOPT='foo bar'
$ export MANOPT
$ man man
man: Too many arguments
Try 'man --help' or 'man --usage' for more information.
$

Un'ovvia correzione ad-hoc è unset MANOPT. Quindi dovresti esaminare da dove proviene la variabile.


Allora perché è l'errore Too many arguments? Come se io export MANOPT=foo, perché non lo dice No manual entry for foo?
wjandrea,

1
@wjandrea manprobabilmente si divide MANOPTin spazi e quindi esegue l'array risultante getopt(3), e si lamenta se rimangono argomenti non opzionali (ovvero argomenti che non iniziano con un trattino). Avrebbero potuto usare un messaggio di errore migliore. Ad ogni modo, anche un singolo argomento è troppo per questo: provare MANOPT=man man man.
mosvy
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.