バッチファイル自動作成ツール「FS.EXE」のご紹介


 みなさんは、複数のファイルを一括してソートしたいとき、どのようにしていますか。ソートに限らず、ファイルを処理するコマンドが、以下のような書式だったら、どのようにしますか。

command <元ファイル名 >先ファイル名 リターンキー

 このようなコマンドは、ソートのほかにも、ベースファイルをかなファイルに変換する「B2K.EXE」、ネットワーク感じフィルタの「NKF.EXE」などなど、いろいろあると思います。
 そのほかにめんどうなものの例として、自動仮名役ソフトの「80点」などのワイルドカード未対応のツールがあります。
 このようなツールで一括してファイル処理を行う場合、ほとんどは、それらの処理をバッチファイルに記述して、それを実行して行うのではないでしょうか(バッチファイルとは何かが分からない人は、ここをクリックしてください)?
 しかし、ファイルの数が増えれば増えるほど、その記述は面倒になります。
 そんなときのバッチファイル作成に役に立つのが、今回ご紹介する「FS.EXE」です。


 このプログラムは、基本的には、カレントディレクトリ以下のファイルの中から、指定されたファイルを検索し、結果をファイルに出力するプログラムなのですが、その出力形式(フォーマット)を、かなり柔軟に指定できます。
 何はともあれ、ベクターのソフトライブラリからダウンロードしてください。
 そして、ダウンロードしたファイルを解凍し、その中からプログラム本体「FS.EXE」をパスの通ったディレクトリにコピーしてください。

 たとえば、上でもご紹介した自動かな訳ソフトの「80点」を用いて、カレントディレクトリ以下の拡張子が *.TXT のファイルを、すべて *.KAN のファイルに変換する手順をご紹介します。

 まずは、コマンドラインから以下のように入力してください。

FS リターンキー

 なにやらあれこれと表示された後、

検索ファイル名:

と表示されます。
 ここで、「*.TXT」と入力してリターンキーを押します。
 すると今度は、対照となるファイルの属性一覧が表示され、

検索ファイル属性:

と表示されます。
ここでは、対照となるファイルの属性(隠しファイルやリードオンリーファイルなど)を指定しますが、通常は変更する必要はありませんので、なにも入力せずにリターンキーを押します。ちなみに、ここでの指定を利用すると、隠しファイルだけ別の場所にコピーするとか、すべてのリードオンリーファイルの属性を解除するといったこともできます。
 次に、この検索結果を、どのようにファイルに書き出すかを聞いてきます。
 ここでは、以下の記号が有効です。


$p 相対パス名 $n 名前 $s サイズ #n 改行 #t タブ
$d ディレクトリ $e 拡張子 $h 更新日付 #r 復帰 #^ ^文字
$f ファイル名 $$ $文字 $t 更新時間 #s 空白 ## #文字
$a ファイル属性 ^@〜^_ 制御コード(00H〜1FH)\n",


 う〜ん、さっぱりわからんぞ!!
 はいはい、私も最初はよくわかりませんでした。
 しかし、覚えてしまえば簡単です。
 今回の例では、ここで以下のように入力します。

CALL 80.BAT $P $N.KAN リターンキー

 ここでの「$P」は、検索したファイル名とパス名に置き換えられます、そして、「$N」は、ファイル名(拡張子は除く)に置き換えられます。これはどういうことかというと、検索にヒットしたファイル名が「TEST.TXT」だとすると、$Pは「TEST.TXT」に、$Nは「TEST」に置き換わります。
 もう一つ「CALL」ですが、これは80点自身がバッチファイルのため、バッチファイルからバッチファイルを呼び出すために付加しています。

 次に、検索結果を出力するファイル名を聞いてきますので、「TEST.BAT」など、適当に入力してリターンキーを押します。
 作業が終わったら、DIRコマンドで確認してみてください。TEST.BATが作成されています。
 最後に、このバッチファイルを実行してみてください。
 このツールの便利さを実感していただけると思います。

MS-DOSの部屋へ戻る

トップページへ戻ります