男が機能しない(引数が多すぎる)


23

manLinuxシステムで実行しようとすると、このエラーが発生します。

$ 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 

どうしたの?


「エイリアス男」または単に「エイリアス」の出力は何ですか?
rbrtflr

1
あなたmanのエイリアスですか?type manまたはで確認してくださいcommand -v man
クサラナンダ

エイリアスll = 'ls -l --color = auto | grep' \ ''-'\' ''エイリアスls = 'ls --color = auto'
NeedHelp

コマンド-v man:/ usr / bin / man
NeedHelp

1
@jayooinデフォルトのロケールを標準Cロケールに設定しています。そのビットについて奇妙なことは何もありません。
クサラナンダ

回答:


39

MANOPT変数の存在を確認してください。

MANOPT
$MANOPTが設定されている 場合、manコマンドラインの前に解析され、同様の形式であることが期待されます。

ソース

例:

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

明らかなアドホックな修正はにありunset MANOPTます。次に、変数がどこから来たのかを調査する必要があります。


では、なぜエラーなのToo many argumentsでしょうか?私のようにexport MANOPT=foo、なんで言わないのNo manual entry for foo
wjandrea

1
@wjandrea manはおそらくMANOPTスペースで分割してから結果の配列を実行し、getopt(3)オプションではない引数(ダッシュで始まらない引数)が残っていると文句を言います。より良いエラーメッセージを使用できたかもしれません。とにかく、でも単一の引数はそれのために多すぎる:試してみますMANOPT=man man man
mosvy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.