• ベストアンサー

manページを作成するツール(コマンド)について

こんにちわ, 今,Linux(Redhat9)でいろいろな個人のプログラムの整理をしているのですが,そのプログラムやコマンドのmanページを作成したいと思っています。 以前きいたところによるとman ???というように既存のlsやCの関数のように検索できるように,manを作成するツールがあると聞いたのですが,そのツールはどのような名前なのでしょうか。 また,コマンドのヘルプを作成するとき,なにか他にいい案,ツールがあれば,教えてください。 よろしくおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
  • shige_70
  • ベストアンサー率17% (168/946)
回答No.1

nroff というのがそうです。 作成するツールというよりは、もともとmanページは最初はソースしかインストールされておらず、初めて参照されるときにnroffで表示するテキストイメージを作成するしくみになっています。 ですから、nroffはls等と同レベルに扱う基本コマンドで、ほとんどのunix系システムには必ずはじめからインストールされています。 /usr/man/man* というディレクトリ群の中に、manページのnroffソースが入っていますので、これを参考に書いてみてください。 ソースを表示用に整形するときには、  nroff -man file とします。 ソースの文法は、man(5)に書いてあります。

その他の回答 (1)

  • nightowl
  • ベストアンサー率44% (490/1101)
回答No.2

こんばんは。shige_70 さんのお答えで完璧と思いますが、蛇足まで。 書籍では「UNIX プログラミング環境」(Brian W. Kernighan, Rob Pike 著、アスキー) の「9.4 マニュアルページの書き方(p.447-)」および 「Linux プログラミング」(Neil Matthew, Richard Stones 著、ソフトバンク) の「8.3 マニュアルページの記述(p.355-)」にそれぞれ マニュアルページファイルの雛形が紹介されています。 両方ともいい本ですが、特に前者はこの分野の古典的名著として名高く、 また今では入手困難でしょうから、書店などで見かけたら即購入するのが吉です。 シェルスクリプトの小技など心憎いほど。 作成された新しいローカルなマニュアルページは マニュアルセクション n として /usr/local/man/mann ディレクトリに入れておくのがいいでしょう。

参考URL:
http://www.amazon.co.jp/exec/obidos/ASIN/4871483517/satorutakabay-22/ref%3Dnosim/249-5843540-3100361

関連するQ&A

  • manページで現在の行数が表示されない

    シェルはbashを使用しています。 会社のPCではmanでヘルプを表示した際、 manページの下方に現在の行位置が表示されるのですが(10/868等)、 自宅のDebianで端末を立ち上げてmanコマンドを打っても、 manページで行数が表示されません。 どなたか設定方法をご存知の方がいましたら ご教示頂ければ幸いです。 どうぞよろしくお願いします。

  • manページが表示されない

    OSは、VMWare上でRed Hat Enterprise Linux 5を使用しています。manコマンドを使用すると、中身が表示されません。正し、パスが通っていない等のエラーメッセージが返ってくる訳でもなく、通常manページを開いたときのような形になります。正し中身は見れません。 /usr/share/manにファイル自体は存在します。 これはどういった現象なのでしょうか。 また、以前にコンフィグファイルを編集しようとしたところ、rootにも関わらず書き込めないという現象が発生しました。調査したところ、ファイルシステム全体が読み込みしかできなくなっており、再起動することによって解決しました。(原因不明)このとき特にファイルをいじったりVM側でこれといった作業は行っていませんでした。 この事が関係するのでしょうか? また、この現象の発生する理由はどういったものが考えられるでしょう? 以上、よろしくお願いします。

  • コマンドがない場合どうすれば・・・

    こんにちは。 今、勉強でlinuxを使っています。 で、adduser、useraddしようとしたら、コマンドがありません。(何ででしょう???)困ってしまいました。つづり間違えているのかと思いましたが、manページは見られました。 redhatでCDから、デフォルトでインストールしたのですが・・・。 こういう場合、どうすればいいのでしょうか? バージョンはREDHAT8カーネルは2.4.18-14です。関係ないかもしれませんがなにぶんハード(自作マシン)が不安定でCRCエラーを起こすときもあり、数度目の再インストールです。

  • manコマンドでコマンド以外のマニュアルが呼び出せません

    manコマンドを使用しても、コマンドについてのマニュアルしか呼び出せません man 3 printf 等を試してみたのですが以下のようなメッセージが出るだけでした See 'man 7 undocumented' for help when manual pages are not available マニュアルが利用できない時は、man 7 undocumented が助けになるから見てください?? と解釈したので、とりあえず入力してみると バグ報告する前に○○で調べてください?等、関係なさそうな情報がでてくるだけでした とりあえず、C言語に関するマニュアルだけでも読めるようにしたいのですが一体どうしたら良いのでしょうか? どなたか分かる方お願いします

  • コマンド ls について

    linux初心者です。 調べたのですが、出てこなかったので知っている方がいらっしゃったら。 linux コマンドで ls というものがあると思いますが、オプションで -la をつけた際に表示される "." ".." の2つのディレクトリ??はいったい何を意味している(というより何?)のでしょうか。 パーミッションも付与されているみたいなので、ファイルかディレクトかなのでしょうか? ls で検索しても出てこなかったので(manも読みましたがそれらしいものはなかったので)、ちょっと無知な感じですがご回答よろしくお願いいたします。

  • Cygwinのlsコマンドについて

    Cygwinの場合、以下のオプションでlsコマンドを実行すると $ ls --full-time -rwxr-xr-x 1 aaaa なし 139 2006-08-23 15:01:34.203125000 +0900 ls.sh と表示されます。 Linux(redhat)上で同様のコマンドを実行すると、 $ ls --full-time -rwxr-x--- 6 root root 4096 Wed Aug 09 16:59:03 2005 ls.sh と表示されます。 タイムスタンプの表示形式が異なっていますが、 Cygwin上で、Linuxのような表記をしたいのですが、 可能でしょうか。ご教授お願い致します。

  • コマンド状態で、日本語メッセージの表示

    RedHat Linux 7.0Jは順調にインストールしましたが、 コマンド状態で、提示メッセージは日本語で表示できますか? 例えば、man XXXを入力すると、対応ヘルプ情報は全然認識できません。 xWindowを立ち上げると、漢字端末(Kterm)を使えば、正常に 日本語メッセージを表示できました。 宜しくお願いします.

  • コマンド(例えばls)の出力結果を文字列で取得するプログラムの作成方法

    はじめまして。 Linux(ディストリビューションは問わず)で コマンド(例えばlsコマンド)を実行して その出力結果を文字列で取得するプログラムを作成したいです。 コマンドの実行はsystem()で可能なのかな?と思っていますが、 コンソールに出力される内容はどのように取得して良いのか分かりません。 詳しい方がおりましたらご教授お願い致します。

  • 外部コマンド、組み込みコマンド、エイリアス

    シェルの外部コマンド、組み込みコマンド、エイリアスのそれぞれについて何であるか詳しく教えてください。 自分の理解では、外部コマンドは、シェルとは別のプログラムで環境変数PATHに書かれた場所にあるものです。組み込みコマンドは、シェルそのものの機能であってシェル以外のプログラムではありません。エイリアスは、既存のコマンドにつける別名というところまではわかりますが、それ以上わかりません。 なぜ、このような疑問が生じたかと言いますと、lsコマンドが組み込みコマンドであるか外部コマンドであるかをtypeで調べようとしたら、訳のわからない言葉が出てきたからです。

  • C#によるUNIXコマンドの実行

    お世話になってます。 只今、LINUX(RedHat系)のサーバーを構築し、そのサーバー内へのアクセスはWindowsのtelnetを使用してコマンドの実行を行っています。 実際に何がしたいかと申しますと… C#のWindowsアプリ、Webアプリでも構わないのですが、C#からサーバーにアクセスしてコマンドを実行するプログラムを作成したいのです。 コマンドプロンプトからtelnetでサーバーにアクセスしてコマンドを実行するプログラムをVBで誰かが作成していたのですが、VBで出来てC#でできないはずがないと思い挑戦している次第です。 特に方法は問いません。 どなたか同じような事を以前にやられた事がある方や知識のある方御教授願います。 よろしくお願いします。