【Batch】引数をループで回す

ネコニウム研究所

PCを利用したモノづくりに関連する情報や超個人的なナレッジを掲載するブログ

【Batch】引数をループで回す

2022-1-13 |

Batchで引数をループで回して何らかのバッチ処理をしたい!

概要

Batchで引数をループで回して何らかの処理をする例を示す。

仕様書

環境

  • Windows 10 Home Version 21H1(OS ビルド 19043.1415)

手順書

下記は、引数を全て表示するサンプルです。

@echo off

:loop

if "%~1" == "" goto end

echo %~1

shift
goto loop

:end

pause

解説

shiftコマンドを実行することで%~1%~2の値が%~2%~3の値がという感じにシフトされる。

gotoコマンドで:loopラベルまで戻る。

引数が空になると%~1も空になるので、%~1が空になったかを判定し空の場合はgotoコマンドで:endラベルまで移動する。

移動後、pauseコマンドで入力待ち状態となる。

なにかキーを押すとバッチファイルが終了する。

まとめ(感想文)

次回は、このサンプルを基にしてなにかしらやりますよ!