teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2021/01/10 14:45

投稿

otn
otn

スコア86349

answer CHANGED
@@ -1,3 +1,28 @@
1
1
  バッチファイルに配列変数はありません。
2
2
 
3
- 変数名を動的に作成することで、擬似的に配列を実現することも可能ですが、配列に入れた後、どうしたいかをきちんと考えた上で、全体の処理を設計した方が良いです。
3
+ 変数名を動的に作成することで、擬似的に配列を実現することも可能ですが、配列に入れた後、どうしたいかをきちんと考えた上で、全体の処理を設計した方が良いです。
4
+
5
+ #回答追記
6
+ ```CMD
7
+ @echo off
8
+ setlocal
9
+ set N=0
10
+ for %%A in (X*) do call :SET "%%A"
11
+
12
+ echo 下記のどれかを選んでください
13
+ for /L %%I in (1,1,%N%) do call echo %%I: %%A%%I%%
14
+ :LOOP
15
+ set /P ANS="対象を番号で選択してください(1-%N%)>>"
16
+ if not defined ANS goto LOOP
17
+ if %ANS% LSS 1 goto LOOP
18
+ if %ANS% GTR %N% goto LOOP
19
+
20
+ call echo %%A%ANS%%%
21
+
22
+ exit /b
23
+
24
+ :SET
25
+ set /a N+=1
26
+ call set A%N%=%~1
27
+ exit /b
28
+ ```