data.csvが、
-----
a001,hoge,fuga
a002,piyo,hogera
a003,xyzzy,foo
-----
と言うファイルの場合、下記batchファイルを作成瀬実行し、a002を入力すると、
Data_01=piyo
Data_02=hogera
が取得できる。
csvファイルの指定に従って、同一の処理の中のパラメータを、入力によって選択したい時に使える。
-----以下.batファイル例
-----
a001,hoge,fuga
a002,piyo,hogera
a003,xyzzy,foo
-----
と言うファイルの場合、下記batchファイルを作成瀬実行し、a002を入力すると、
Data_01=piyo
Data_02=hogera
が取得できる。
csvファイルの指定に従って、同一の処理の中のパラメータを、入力によって選択したい時に使える。
-----以下.batファイル例
@echo off
rem バッチファイルでCSVデータの先頭列が任意の値にマッチする行を検索し、
rem その行の各カラムのデータを取り出す。
echo 作業対象行のIDを入力。
set /p Target_ID=
FOR /F "delims=, tokens=1,2" %%a in (%~dp0data.csv) do (
IF "%Target_ID%"=="%%a" set Data_01=%%b
)
FOR /F "delims=, tokens=1,2,3" %%a in (%~dp0data.csv) do (
IF "%Target_ID%"=="%%a" set Data_02=%%c
)
rem ちなみに暗黙で1列目のデータ=%%a、2列目のデータ=%%b、3列目のデータ=%%c......となります。
rem バッチファイルでCSVデータの先頭列が任意の値にマッチする行を検索し、
rem その行の各カラムのデータを取り出す。
echo 作業対象行のIDを入力。
set /p Target_ID=
FOR /F "delims=, tokens=1,2" %%a in (%~dp0data.csv) do (
IF "%Target_ID%"=="%%a" set Data_01=%%b
)
FOR /F "delims=, tokens=1,2,3" %%a in (%~dp0data.csv) do (
IF "%Target_ID%"=="%%a" set Data_02=%%c
)
rem ちなみに暗黙で1列目のデータ=%%a、2列目のデータ=%%b、3列目のデータ=%%c......となります。