**これは、[InterSystems FAQサイト](https://faq.intersystems.co.jp/)の記事です。**   IRISのターミナルスクリプトを使用することで、コマンドラインからの入力作業なしで IRIS のユーティリティを実行することが可能になります。 また、IRISのルーチンやクラスを、Windows のバッチファイルで実行する場合(irisコマンドで実行)は、「認証なし」もしくは「オペレーティングシステム認証」を指定していただく必要がありますが、パスワード認証のみしか使用できないような場合に、ターミナルスクリプトを使用する方法が使えます。 手順は、以下のようになります。 \---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\----- iristerm.exeを使用します。 これはプロンプトが返ってきてユーザが入力を必要とするもの(例えば^%GSIZEなど)にも有効です。 詳細は以下をご覧ください。import.scrの中身を変更することであらゆるIRISのユーティリティの実行に使用できます。 1. トピック下部にあるサンプル import.scr を、適当なディレクトリに配置して下さい。 (ここではC:\import.scr とします) 2. 以下のように実行します。 
<インストールディレクトリ>\bin\iristerm.exe /console=cn_ap:<instance_name>[<namespace>] C:\import.scr
\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\---\----- 以下ドキュメントをご参照ください。 [ターミナルスクリプトの使用法について](https://docs.intersystems.com/irislatestj/csp/docbook/DocBook.UI.Page.cls?KEY=GTER_scripts_general) ★import.scr(ターミナルスクリプトのサンプル)
#ログインUsername/Password入力
wait for::
;Username
send:_System<CR>
wait for::
;Password
send:SYS<CR>
wait:%SYS
#ネームスペース変更
send: set $NAMESPACE="USER"
#クラスインポート&コンパイル実行
send:do ##class(%SYSTEM.OBJ).Load("c:\temp\test.xml","ck")
send:
send:halt
なお、ターミナルスクリプトを実行する場合、スクリプト内で日本語を直接使用することはできません。 これは、ターミナルでスクリプトを読み込む際に文字コードは無変換で読み込む仕様となっているためです。 日本語をUnicodeに変換する形でコードを記述することで、日本語を使用することが可能になります。 例:.scrファイルを SJISで作成した場合(ファイル保存文字コード=SJISの時)
wait for: USER>
send:set ^x=$ZCVT("あいうえお","I","SJIS")
または、日本語を直接記述せずに、$char()を使用して文字コードで指定する方法でも可能です。 
wait for: USER>
send:set ^x=$char(12354,12356,12358,12360,12362)
※使用したい文字の文字コードを確認するには、$ascii()を使用します。
USER>write $ascii("あ")_","_$ascii("い")_","_$ascii("う")_","_$ascii("え")_","_$ascii("お")
12354,12356,12358,12360,12362