for 文

set /a i=0
for %%a in (%*) do (
    set /a i+=1
)
echo %i% args passed.Code language: DOS .bat (dos)

ドキュメント:

for | Microsoft Learn [公式]

参考:

バッチファイルの for コマンド解説 – Qiita

バッチファイルの for / if 文の中で変数使う際につまづくこと – Qiita

FOR – バッチファイルで繰り返し処理を使う | JavaDrive

for – バッチファイルで繰り返し処理をする | 知識ゼロからの Windows バッチファイル超入門

バッチファイルでループ処理する | 知識ゼロからの Windows バッチファイル超入門

繰り返し処理をする | コマンドプロンプトの予感

意外と知られていないけど、知っていると便利な FOR コマンド | Web / DB プログラミング徹底解説

for コマンド – 繰り返し処理を行う | @IT

for コマンドでワイルドカード指定した出力順について – Microsoft TechNet フォーラム

指定した回数繰り返す

  • for 文の /L オプションを使用する
使用例

ループを 10 回繰り返す。

for /L %%i in (1, 1, 10) do (
    echo Loop %%i
)Code language: DOS .bat (dos)

参考:

for 文の使い方 | ALH 株式会社

遅延変数

遅延変数を有効にするには、setlocal コマンドに enabledelayedexpansion を指定する。

setlocal enabledelayedexpansionCode language: DOS .bat (dos)

遅延変数として参照するには、感嘆符で変数名を囲む。

set /a i=0
for %%f in (%*) do (
    set /a i+=1
    echo !i!: %%~nxf
)Code language: DOS .bat (dos)

ドキュメント:

setlocal | Microsoft Learn [公式]

参考:

バッチファイル界の魔境「遅延環境変数」に挑む- Qiita

遅延環境変数について – Qiita

バッチの for 文で変数を遅延展開する | 晴耕雨読

遅延変数のサンプル if 文/for 文の注意点 | ITSakura

代入時の注意 (ENABLEDELAYEDEXPANSION) | FreeBSD あれこれ

コマンドの実行結果を変数に入れる

こちらのページを参照

参考:

コマンド実行結果を環境変数に代入する方法 – Qiita

cmd.exe で Bash のバックティックのようにコマンドの出力を埋め込む – Qiita

バッチファイルでコマンドの実行結果を変数に格納する | まくまくノート

コマンドの実行結果を変数にセットする | コマンドプロンプトの予感

バッチファイルでコマンド出力展開 | 幸熱日記

ラベルを使う (goto)

参考:

無限ループする | コマンドプロンプトの予感

無限ループするバッチファイルの作り方!ラベルを使って何度も処理させてみよう! | Correct-Log

ワイルドカード

参考:

ワイルドカードの使い方 | JavaDrive

ワイルドカードについて | Windows と暮らす

ワイルドカード | Programming Field

バッチファイルでワイルドカードを使ってファイルを移動する | Naokix.net

甘くも危険なワイルドカードを使いこなす | @IT

フォルダを再帰的に処理する

参考:

dir コマンドでファイルやディレクトリを再帰的に検索する | まくまくノート

dir コマンドでファイル名を再帰的に検索する方法 | よぼろぐ よの冒険記

指定フォルダにあるファイル一覧を再帰的にフルパスで取得する方法 | oki2a24

サブフォルダーも含めてすべてのファイルの拡張子を変更する方法 | Project Group

フォルダ内のファイルを再帰的にリネームするバッチファイルの書き方 | 俺の技術メモ

for 文で特殊記号を処理したい

参考:

for 文 usebackq で「)」をエスケープする方法 – teratail

escaping “=” (equal sign) in for /f – Super User

escape question mark in for loop – Stack Overflow

escaping double-quote in `delims` option of `for /F` – Stack Overflow

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA