バッチプログラム

●バッチファイル
プロンプト上で入力する一連のコマンドを記述したテキストファイルで、拡張子を.batまたは、.cmdとすることで実行ができる。
※メモ帳等で作成する場合は、文字コードをANSIにすること。デフォルトはUTF-8になっており実行時に文字化けが発生します。

●記述方法
・コマンドの先頭に@をつけた場合、そのコマンドは非表示で実行される。
・コマンドの末尾に/?オプションを指定するとヘルプを表示する。
・コマンドからコマンドへ結果を渡す場合には、|(パイプ)を使用する。
・変数 代入される値によって型が自動的に設定される。大文字、小文字の区別はない。
▼ サンプルコード
・算術演算子 +、-、*、/、%、&、|、^、<<、>> 例)set /a a=1+2、set /a b=%a%-3
・比較演算子 ==またはequ(=)、neq(!=)、lss(<)、leq(<=)、、gtr(>)、geq(>=)、not
・インクリメント、デクリメント +=、-=
▼ サンプルコード
・数値 0xで始まる数値は16進数、0で始まる数値は8進数となる。
・文字列操作
▼ サンプルコード
・ファイルの作成、追記 >、>>
▼ サンプルコード

●制御構文
・if
if %a%==1 (
  処理1
) else if %a%==2 (
  処理2
) else (
  処理3
)
・for
rem 0から+1ずつ9まで
for /l %%a in (0, 1, 9) do (
  echo %%a
)

rem 拡張子.txtファイルを全て表示
for %%b in (*.txt) do (
  echo %%b
)
・goto
goto label
:label
・call
call test.bat arg
call :label arg
:label
echo %1
exit /b 1    errorlevelに1を返す

●コマンド
@echo off以降のコマンドは全て非表示になります。
remコメント行として扱われる。
echo画面に出力する。
pauseキー入力待ち状態にする。
choice指定したキー入力を判定する。デフォルトはY,N、/cオプションでキー指定。値はerrorlevelに格納。
set変数を設定する。環境変数の一覧表示。/aオプションで計算する。/pオプションでキー入力を要求する。
setlocal同一バッチファイル内だけで有効な変数を設定する。
callバッチファイルの呼び出し。サブルーチンの呼び出し。
startバッチファイルを呼び出し終了を待たずに次のコマンドへ移ります。
cls画面表示をクリア。
color画面の背景と文字の色を変更。
cdカレントディレクトリの変更。
copyファイルをコピー。
xcopyより高度なファイルコピー。
replaceバックアップ用コピー。
delファイル・フォルダを削除。
dirファイル・フォルダ一覧を表示。
fcファイルの内容を行単位で比較。
compファイルの内容を文字単位で比較。
findファイル内の文字列を検索。
findstrより高度なファイル内の文字列を検索。
mdフォルダ作成。
moveファイル・フォルダを移動。
renameファイル・フォルダ名を変更。
rdフォルダを削除。
sortファイルの内容を並べ替え。ファイル名、フォルダ名を並べ替え。
shift引数をずらして格納しなおす。
titleコマンドプロンプト画面のタイトル表示を変更。
treeフォルダ・ファイル構成をツリー形式で表示。
typeファイル内容を表示。
moreファイルの内容を一画面分ずつ表示。


ページトップへ戻る