apropos
は、マニュアルページの名前と説明を検索するのに最適です。マニュアルページの内容全体を検索するための同様のコマンドはありますか?
コマンドmanmanを使用すると、2つのオプションがあることがわかります。
-k Equivalent to apropos.
-K Search for the specified string in *all* man pages. Warning:
this is probably very slow! It helps to specify a section.
(Just to give a rough idea, on my machine this takes about a
minute per 500 man pages.)
これはRHEL5システム上にあります
これはおそらく遅いです。しかし、私はNetBSD用のGoogle Summer of Codeプロジェクトを完了したばかりで、私の仕事はまさにこれでした。マニュアルページの全文検索を実装します。
コードはここにあります: https://github.com/abhinav-upadhyay/apropos_replacement
現時点では、これは* BSD(正確にはNetBSDですが、若干の調整を加えた他のBSDで動作するはずです)システムのみを対象としていますが、コードの記述中にいくつかの仮定が行われ、修正するLinuxマシンがありません。 Linuxで作業するためにこれを移植してください。
man-k.org に利用可能なWebインターフェイスがあります。
あなたのための2つのオプション。まず、次のスクリプトを試すことができます。
#!/bin/bash
for MANFILE in /usr/share/man/man?/*
do
found=`zcat $MANFILE | grep -c "$1"`
if [ $found -gt 0 ]; then
echo "------ Found in $MANFILE"
man -P cat $MANFILE | grep --color=auto "$1"
fi
done
searchman.sh
などとして保存し、オプションで実行可能にして、$PATH
のどこかに貼り付けます。 sh searchman.sh <query>
を実行するだけです。 (注:これをすぐにまとめました。テストしたところ、すべて問題ないように見えますが、あちこちで調整する必要があるかもしれません。)
次に、特にUbuntuを使用している場合は、 http://manpages.ubuntu.com/ -を使用できます。フルテキスト検索オプションが多数あります。