fml8 チュートリアル (バージョン 7.99.1-20180910)
Prev | Chapter 8. fml4 と fml8 の相違 | Next

# fml4 と fml8 の違い: コマンドラインでの操作 (makefml)

makefml とシンタックスの異なる fml というコマンドがあります。

    makefml コマンド ＭＬ名 オプション
    fml     ＭＬ名 コマンド オプション

違いは引数の順番です。 ＭＬ名とコマンドの順番が違うだけで、 実行される内容は、まったく一緒です。

動作時の表示の仕方も異なります。fml8 のほうが Unix 的です。

fml4 のコマンドは、可能なかぎり処理の様子を表示し、最後に処理の変更 点を表示するようになっています。逆に、fml8 のコマンドは、できるだけ 静かに動きます。 [1] これは、そのほうが Unix 風だということと、必ずしも操作対象がファイルと は限らないため差分が表示できるわけではないなどといったことがあるためで す。

makefml から実行される各コマンドの相違点は以下の通りです。

Table 8-1. fml4 と fml8 の違い: CUI (makefml もしくは fml コマンド)

内容 | fml4 | fml8
--- | --- | ---
ヘルプの表示 | makefml help ML もしくは makefml info ML を実行するとヘルプが表示される。 どちらでも同じ動作。 表示の際に、環境変数 PAGER が指定されていれば、それを使う。 | 未実装
fml のインストール方法 | トップディレクトリで make install (実体は makefml install)を実行する | トップディレクトリで configure および make install (実体は install.pl スクリプト)
インストールスクリプトの挙動 | 対話法式がデフォルト。最重要項目は対話的に設定が可能。 | 対話法式ではない。最重要項目は configure オプションで指定する。
ＭＬの作成 | makefml newml ML もしくは makefml new ML | makefml newml ML
newml コマンドが作るエイリアス(見本)ファイル | sendmail 用 (互換性があるため postfix 用としても使用可能) | postfix, sendmail, qmail, procmail すべてを作る
newml コマンドが作るエイリアス(見本)ファイルのパス | /var/spool/ml/etc/aliases | /var/spool/ml/etc/mail/aliases
qmail 用の設定を作る | makefml qmail-setup ML | 不要 (デフォルトで作成する)
aliaes を再生成する | makefml recollect-aliases ML | 該当するものはない
ML の削除 | makefml destructml ML | makefml rmml ML
エラーメール自動解析ツールを設定する | makefml mead ML を実行し、エイリアスも適宜、設定変更する。 | 不要、デフォルトで設定されている
fml 自体のテストをしてみる | makefml test ML | 未実装
LISTSERV スタイルのコマンドのセットアップ。 | makefml fmlserv ML listserv majordomo でも同じ。 | 未実装
アドレスを(受信者、送信者リスト両方に)追加する | makefml add ML ADDRESS もしくは adduser でもよい。 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives と members ファイル。 | makefml subscribe ML ADDRESS なお add subscribe adduser useradd コマンドは全て同じ意味である。 エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は $primary_recipient_maps と $primary_member_maps で、 具体的には recipients と members ファイル。
アドレスを(受信者、送信者リスト両方から)削除する | makefml bye ML ADDRESS もしくは byeuser でもよい。 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives と members ファイル。 | makefml unsubscribe ML ADDRESS なお bye unsubscribe deluser remove resign signoff userdel コマンドは全て同じ意味である。 エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は $primary_recipient_maps と $primary_member_maps で、 具体的には recipients と members ファイル。
アドレスを変更する(受信者リスト、メンバーリストともに変更する) | makefml chaddr ML OLD_ADDRESS NEW_ADDRESS 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives と members ファイル。 | makefml chaddr ML OLD_ADDRESS NEW_ADDRESS エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は $primary_recipient_maps と $primary_member_maps で、 具体的には recipients と members ファイル。
受信者リストにのみアドレスを追加する。 | makefml addactives ML ADDRESS これは addactive add2active add2actives でも同じ意味。 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives ファイル。 | makefml addactives ML ADDRESS エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は $primary_recipient_maps で、 具体的には recipients ファイル。
メンバーリストにのみアドレスを追加する。 | makefml addmembers ML ADDRESS これは addmember add2member add2members でも同じ。 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は members ファイル。 | makefml addmembers ML ADDRESS エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は $primary_recipient_maps と $primary_member_maps で、 具体的には recipients と members ファイル。
リアルタイム配送を止める | makefml off ML ADDRESS これは skip でもよい。 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives ファイル。 | makefml off ML ADDRESS エラーにならない限り、画面表示はなく、静かに終る。
リアルタイム配送を再開する | makefml on ML ADDRESS 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives ファイル。 | makefml digestoff ML ADDRESS もしくは makefml digest ML ADDRESS off エラーにならない限り、画面表示はなく、静かに終る。
まとめおくり配送へ | makefml matome ML ADDRESS コマンドは digest でもよい。 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は actives ファイル。 | makefml digeston ML ADDRESS もしくは makefml digest ML ADDRESS on エラーにならない限り、画面表示はなく、静かに終る。
リモート管理者を追加する。 | makefml addadmin ML ADDRESS 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は members-admin ファイル。 | makefml addadmin ML ADDRESS エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は recipients-admin と members-admin ファイル。
リモート管理者を削除する。 | makefml byeadmin ML ADDRESS 終了後、ファイルの変更点が表示される。 デフォルトの操作対象は members-admin ファイル。 | makefml byeadmin ML ADDRESS エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は recipients-admin と members-admin ファイル。
リモート管理者のパスワードを設定する(1) | makefml passwd ML 対話モードになり、アドレスとパスワードの入力を促される。 | makefml passwd ML はエラーになる。(未実装?)
リモート管理者のパスワードを設定する(2) | makefml passwd ML ADDRESS 対話モードになり、パスワードの入力を促される。 | makefml passwd ML ADDRESS 引数で PASSWORD を入力しない場合は、 対話モードになり、パスワードの入力を促される。
リモート管理者のパスワードを設定する(3) | makefml passwd ML ADDRESS PASSWORD 処理の様子が表示される。 デフォルトの操作対象は etc/passwd ファイル。 | makefml passwd ML ADDRESS PASSWORD エラーにならない限り、画面表示はなく、静かに終る。 デフォルトの操作対象は etc/passwd-admin ファイル。
メニュー形式で設定を変更する | makefml config ML | 実装しているが、まだ中途半端。
設定ファイルを編集する | makefml edit ML 使うエディタの入力を促し、 そのエディタで config.ph を編集できるようにする。 エディタのデフォルトは vi 。 | makefml edit ML エディタで config.cf を編集できるようにする。 使うエディタを尋ねたりはしない。 環境変数 EDITOR が設定されていれば、その値が使われる。 エディタのデフォルトは vi 。
fml4 固有の設定ファイル変換( cf から config.ph を再生成する) | makefml update-config ML これは update、config-update、update-config.ph コマンドでも同じ。 処理の様子が表示される。 | 設定ファイルは config.cf しかないため該当する操作は不要。
メニューを使い、cf のテンプレートファイルを編集する | makefml config-template ML | 未実装
newml の際に使われる各種テンプレートファイルを編集する | makefml edit-template FILE なお FILE なしで実行すると、指定可能なファイル一覧が表示される。 | 未実装
ＭＬのホームディレクトリにあるヘルプなどのファイルを再生成する | makefml create-doc-template ML | 不要。存在しない。 もし置かれているなら、それは管理者がつくって置いたもののはず。
引数の SRC ファイルを DST へ、ファイル内の変数を変換しつつ生成する。 | makefml conv ML SRC DST | 未実装
ログをみる。デフォルトでは最後の100行が表示される。 | makefml log ML [オプション] これは makefml tail ML でも同じ動作になる。 | makefml log ML オプションは未実装
admin.cgi のセットアップ(スクリプト生成、apacheの設定支援) | makefml admin.cgi ML 対話的に行なわれる。 | 半分未実装、半分不要 (スクリプトは makefml newml 時に自動的に作成)
ml-admin.cgi のセットアップ(スクリプト生成、apacheの設定支援) | makefml ml-admin.cgi ML makefml mladmin.cgi ML でも同じ。 対話的に行なわれる。 | 半分未実装、半分不要 (スクリプトは makefml newml 時に自動的に作成)
admin.cgi の .htpasswd を設定する | makefml html_cgiadmin_passwd ML | 未実装
html_config | makefml html_config ML このコマンドは html_config_set でも同じ。 CGI から設定を変更する際に使われている内部用コマンド。 | 未実装
リモート管理者のパスワードを設定し、かつ ml-admin.cgi の .htpasswd を(リモート管理のパスワードと同じも のに)設定する | makefml html_passwd ML | 未実装
ml-admin.cgi の .htpasswd を設定する | makefml htpasswd ML | 未実装
pgp コマンド WRAPPER | makefml pgp ML | 未実装
pgp2 コマンド WRAPPER | makefml pgp2 ML | 未実装
pgpe コマンド WRAPPER | makefml pgpe ML | 未実装
pgpk コマンド WRAPPER | makefml pgpk ML | 未実装
pgps コマンド WRAPPER | makefml pgps ML | 未実装
pgpv コマンド WRAPPER | makefml pgpv ML | 未実装
gpg コマンド WRAPPER | makefml gpg ML | 未実装
admin-auth (PGP, GPG KEY RING の操作) | makefml admin-auth ML | 未実装
admin-encrypt (PGP, GPG KEY RING の操作) | makefml admin-encrypt ML | 未実装
dist-auth (PGP, GPG KEY RING の操作) | makefml dist-auth ML | 未実装
dist-encrypt (PGP, GPG KEY RING の操作) | makefml dist-encrypt ML | 未実装
popfml (POP でMTAとMLをエミュレーションする fml) のセットアップをする | makefml popfml | そもそも popfml 自体が未実装
POP のパスワードを設定する | makefml pop_passwd | そもそも popfml 自体が未実装
ＭＬの動作をロックする | makefml lock ML | 対応するものがない。そもそも giant lock がない。
バグレポートの編集テンプレートを作る | makefml bug-report-template ML send-pr でもよい | 未実装
コマンドの実行 | makefml command ML | 未実装
配送モードの設定 | makefml delivery_mode ML | 未実装
makefml 中の変数を変更する | makefml setq ML | 対応するものがない
fml が動いている環境についてサマリを表示する | makefml showconfig ML showconf でもよい | 未実装 / 実装予定なし
「show コマンド」スタイルの OS 情報を表示する方法 | makefml show コマンド | 未実装 / 実装予定なし
ファイルを送る | makefml resend ML | 未実装 / 実装予定なし
upgrade コマンド: fml 2.0 から 3.0 へのコンバート | makefml upgrade ML | 不要

### Notes

[1] | 逆に、makefml/fml を他のスクリプトから呼び出す場合には、コンピュータ処 理向きの出力をさせるようにすることが出来ます。これは、けっこう出力され るものが多く、うるさい感じです。

Prev | Home | Next
fml4 と fml8 の違い: コマンドメールやエラーメッセージ | Up | fml4 と fml8 の違い: GUI (CGI)

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.