回答編集履歴
1
補足追記
test
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
・OfficeのVBA
|
10
10
|
・WSL1またはWSL2 の bash等(デフォルトでは未インストールのはずなのでMSからインストール要)
|
11
11
|
・Windows非標準の各種プログラミング言語(インストール可能なら)
|
12
|
-
あるいは、後出の「案2」だとバッチスクリプトでもそれほど熟練者じゃなくてもいいかも。
|
12
|
+
あるいは、後出の「案2」だとバッチスクリプトでもそれほど熟練者じゃなくてもいいかも。そんな気が強くしてきました。
|
13
13
|
|
14
14
|
以下、バッチスクリプトでやる場合の説明。
|
15
15
|
「環境変数」は「変数」とついてますが、一般のプログラミング言語の変数とは少し違います。
|
@@ -35,7 +35,7 @@
|
|
35
35
|
)
|
36
36
|
```
|
37
37
|
のようなコードだったのではないかと思います。
|
38
|
-
6行目の`for`から末尾の`)`までが1つの大きな文です。`%HENSU2%`や`%HENSU2:~0,4%`の値取り出しは、一般の言語のようにその文に制御か移った時ではなくて、6行目の`for`の構文解析の直前に行われます。この時点では値は`0`なので、そのように変数名が値`0`に置き換わります。その次にfor文が実行されます。C等をご存じなら文単位ではありますが`#define`で定義するマクロみたいなものと思ってください(構文解析前に置換されるという意味で)。
|
38
|
+
6行目の`for`から末尾の`)`までが1つの大きな文です。`%HENSU2%`や`%HENSU2:~0,4%`の値取り出しは、一般の言語のようにその文に制御か移った時ではなくて、6行目の`for`から末尾までの大きな1文の構文解析の直前に行われます。この時点では値は`0`なので、そのように変数名が値`0`に置き換わります。その次にfor文が実行されます。C等をご存じなら文単位ではありますが`#define`で定義するマクロみたいなものと思ってください(構文解析前に置換されるという意味で)。
|
39
39
|
|
40
40
|
このことは、`set /?`で表示される環境変数についての説明の後半に例文付きで分かり易く説明されています。
|
41
41
|
|