バッチ スクリプトの For ループ

MD Aminul Islam 2023年3月20日
  1. バッチ スクリプトでデフォルトの FOR ループを使用する
  2. バッチ スクリプトで FOR /L ループを使用する
  3. バッチ スクリプトで FOR /R ループを使用する
  4. バッチ スクリプトで FOR /D ループを使用する
  5. バッチ スクリプトで FOR /F ループを使用する
バッチ スクリプトの For ループ

このチュートリアルでは、バッチ スクリプトで FOR ループを使用する方法を示します。

ループは、プログラマーが指定した回数に達するまで、特定のタスクを継続的に実行するために使用されます。 この FOR ループにはさまざまなバージョンがあります。

バッチ スクリプトでデフォルトの FOR ループを使用する

これは、ファイルのリストを反復処理するデフォルトの形式です。 一般的なフォーマットを以下に示します。

FOR %%variable IN ( File_directory_01 File_directory_02 ) DO command

以下の例では、ファイルのリストを別のディレクトリにコピーします。

例:

@echo off
FOR %%f IN (E:\testFile\fileOne.data  E:\testFile\fileTwo.txt) DO  (
    copy  %%f E:\newDir
)
pause

バッチ スクリプトで FOR /L ループを使用する

主に数値のリストを提供するために使用されます。FOR /L ループを使用するための一般的な形式または構文を以下に示します。

FOR /L %%var_name IN (StartValue, Increment, LimitValue) DO YOUR_CODE

例:

@echo off
FOR /L %%v IN (1 1 5 ) DO  (
    echo %%v
)
pause

出力:

1
2
3
4
5
Press any key to continue . . .

バッチ スクリプトで FOR /R ループを使用する

この FOR ループ バージョンは、特定のファイル タイプでフィルタリングした後、ディレクトリ内のファイルのリストを提供します。 一般的な形式を以下に示します。

FOR /R "path" %%variable IN ( Filters of file_type ) DO command

以下の例では、タイプ .txt および .log のすべてのファイルを提供します。

例:

@echo off
FOR /R "C:\Directory" %%F IN (*.txt *.log) DO  (
    echo %%F
)
pause

バッチ スクリプトで FOR /D ループを使用する

これにより、ディレクトリのリストが提供されます。 これの一般的な形式は次のとおりです。

FOR /D %%variable IN ( directory_filters ) DO command

以下の例は、指定されたディレクトリのすべてのサブディレクトリを一覧表示します。

例:

@echo off
FOR /D %%v IN ( * ) DO  (
    echo %%v
)
pause

バッチ スクリプトで FOR /F ループを使用する

これは、特定のファイルの内容を読み取る複雑な形式です。 FOR /F ループを使用する一般的な形式を以下に示します。

FOR /F "Criteria" %%i IN ( file.txt ) DO

以下の例では、指定されたファイルの内容を読み取り、基準に基づいて出力を表示します。

例:

@echo off
FOR /F "age=23" %%i IN ( persons.txt ) DO  (
    echo Full Name: %%i %%j   Gender: %%k
)
pause

フルネームは、ファーストネームとラストネームの 2つの部分に分かれています。

著者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn