- morogram・sortl・ngmerge.plの利用方法については、すでに説明しました。
- これまでは、コマンドプロンプトを起動してから、それぞれの実行ファイル或いはperl scriptのあるフォルダに移動してから、プログラムを実行していましたが、それを「batファイルを利用して簡単かつ一気に実行しよう」というのがここの内容になります。
batファイルとは?
- bat(バッチ)ファイルとは、あらかじめコンピュータにさせる幾つかの操作を記しておいたテキストファイルの事です。
- 文字コードはShift-JISで構いませんが、拡張子が「bat」である必要があります。
- バッチファイルを作っておくと、バッチファイルのアイコンを左ダブルクリックするだけで、そこに記されている操作が一気に実行されます。
batファイルを作ろう
- batファイルは、単なるプレーンなテキストファイルなので、メモ帳や秀丸で作る事が出来ます。
- ここでは、複数のファイルにmorogramを実行し、それをngmerge用にsortlで文字コード順並び替えて、ngmergeを実行する所までやってみましょう。
- 初めに、秀丸のアイコンを左ダブルクリックして、新規テキストファイルを開きます。
- 次に、morogramの書式を入力します。
- ここでは、「101.txt」を対象に、「頻度数1以上」「gram数は1」を指定 してN-gramモデルを作り、それそ「101.txt」出力するという命令を記述しています。
morogram.bat - 秀丸
morogram-0.7.1w.exe --f=1 --g=1,1 101.txt > m101.txt
- 次に、sortlの書式をmorogramの命令を記述したすぐ下の行にsortlの命令を記述します。
- ここではngmerge.plで利用可能な書式にするために、[m101.txt]の文字列部分を文字コード順に並び替え、結果を[n101.txt]に保存 するという命令を記述しています。
morogram.bat - 秀丸
morogram-0.7.1w.exe --f=1 --g=1,1 101.txt > m101.txt
sortl.exe -W U -t \t +1 -o n101.txt m101.txt
- これで、一つのファイルを対象にした基本書式が出来上がりました。
- 複数のファイルを対象にする場合は、この二行を必要な分だけコピー&貼り付けを実行して、ファイル名の部分だけ書き換えましょう。
- ここでは、「101.txt」「102.txt」「103.txt」「104.txt」の4つを対象にしています。
morogram.bat - 秀丸
morogram-0.7.1w.exe --f=1 --g=1,1 101.txt > m101.txt
sortl.exe -W U -t \t +1 -o n101.txt m101.txt
morogram-0.7.1w.exe --f=1 --g=1,1 102.txt > m102.txt
sortl.exe -W U -t \t +1 -o n102.txt m102.txt
morogram-0.7.1w.exe --f=1 --g=1,1 103.txt > m103.txt
sortl.exe -W U -t \t +1 -o n103.txt m103.txt
morogram-0.7.1w.exe --f=1 --g=1,1 104.txt > m104.txt
sortl.exe -W U -t \t +1 -o n104.txt m104.txt
- 最下行に、ngmerge.plの書式を入力します。最終出力ファイルは、仮に「ngmerge.txt」にしておきます。このテキストファイルは、utf-8で出力されるはずです。
morogram.bat - 秀丸
morogram-0.7.1w.exe --f=1 --g=1,1 101.txt > m101.txt
sortl.exe -W U -t \t +1 -o n101.txt m101.txt
morogram-0.7.1w.exe --f=1 --g=1,1 102.txt > m102.txt
sortl.exe -W U -t \t +1 -o n102.txt m102.txt
morogram-0.7.1w.exe --f=1 --g=1,1 103.txt > m103.txt
sortl.exe -W U -t \t +1 -o n103.txt m103.txt
morogram-0.7.1w.exe --f=1 --g=1,1 104.txt > m104.txt
sortl.exe -W U -t \t +1 -o n104.txt m104.txt
perl ngmerge.pl n101.txt n102.txt n103.txt n104.txt > ngmerge.txt
- ここまで入力し終えたら、メニューの[ファイル]→[名前を付けて保存]を選択して、保存のダイアログボックスを開き、morogram他のプログラムがあるフォルダに移動してから、ngram.batという名前で保存します。
- これで、batファイルの作成が終了しました。
batファイルを使おう
- batファイルは、先ほどbatファイルを保存したフォルダを開き、「ngram.bat」を左ダブルクリックするだけで実行されます。
- 但し、batファイルに書かれているプログラムやテキストファイルは、同じフォルダ内に入れておく必要があります。
- batファイルを左ダブルクリックすると、コマンドプロンプトが自動的に開いて、batファイルに書かれたプログラムを自動的に実行し、実行後は自動的にコマンドプロンプトを終了します。
- batファイルが終了した後のフォルダには、batファイルに書かれたプログラムの指定によって作成されたファイルが生成されているはずです。
- ngmerge.txtも正常に生成されています。