#author("2023-06-26T22:48:32+09:00","","")
#author("2023-06-26T22:48:47+09:00","","")
[[ソフトウェア開発>SoftwareEngineering]] / [[バッチファイル>./]]

*バッチファイル [#l3ea2ef3]
#contents

*バッチファイル [#l3ea2ef3]
**ユーザーに入力を求める方法 [#j33c22f4]
-SET /P を使用する。
 SET /P InputParameter="パラメーターを入力してください>"
 ECHO "入力されたパラメーターは[%InputParameter%]です"

**長い文字列を改行して入力する方法 [#ibb04351]
-行末に[^](キャレット)を入力する。
 SET CommandText=select^
       code^
      ,name^
  from^
      employee
 
 
 ECHO "CommandText[%CommandText%]"

**ブロック文の書き方 [#o3a80ce4]
 SET /P InputParameter="数値を入力してください>"
 
 IF %InputParameter% GTR 10 (
     ECHO 入力された値は、
     ECHO 10を超えています。
 ) ELSE (
     ECHO 入力された値は、
     ECHO 10以下です。
 )

**IF文の書き方 [#a86d95a6]
|演算子|説明|例|h
|==|等しい|IF 10 == 10 ECHO 等しいです。|
|EQU|等しい|IF 10 EQU 10 ECHO 等しいです。|
|NEQ|等しくない|IF 9 NEQ 10 ECHO 等しくないです。|
|LSS|未満|IF 9 LSS 10 ECHO 10より小さいです。|
|LEQ|以下|IF 10 LEQ 10 ECHO 10以下です。&br;IF 9 LEQ 10 ECHO 10以下です。|
|GTR|超過|IF 11 GTR 10 ECHO 10を超えています。|
|GEQ|以上|IF 11 GEQ 10 ECHO 10以上です。&br;IF 10 GEQ 10 ECHO 10以上です。|

**FOR文の書き方 [#c1fa9b75]
-コマンドラインのケース
--基本的な使い方
---コマンド例
 FOR %I in (1, 2, 3) DO ECHO %I
---実行結果
 1
 2
 3
--指定した回数だけ繰り返す
---コマンド例
 FOR /l %i IN (0, 2, 10) DO ECHO %i
---実行結果
 0
 2
 4
 6
 8
 10
-バッチファイルのケース
インクリメント変数の%を二重にする。
 FOR %%I in (1, 2, 3) DO ECHO %%I
--カレントディレクトリに存在する拡張子が"csv"であるファイル名を出力する
 FOR %%f in (*.csv) do ECHO %%f

**サブルーチンの書き方 [#g89ee7e7]
 ECHO OFF
 
 
 
 CALL :execute "param1" "param2" "param3"
 
 
 
 exit /b
 
 REM ---------------------------------------------------------------------------
 REM <summary>標準出力画面に値を表示する</summary>
 REM ---------------------------------------------------------------------------
 :execute
 
 ECHO "引数1:[%1]"
 ECHO "引数2:[%2]"
 ECHO "引数3:[%3]"
 
 exit /b
**空のテキストファイルを作成する [#v739fa33]
-基本的な使い方
 TYPE nul > EmptyTextFile.txt
-繰り返し
 FOR /l %i IN (11, 1, 42) DO TYPE nul > %i.txt
//End 空のテキストファイルを作成する

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS