2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

バッチ開発初心者が躓きやすいと感じたところ

Posted at

#1.変数の定義
下記のように書くと空白も認識されて変数に代入されてしまう。
(他の言語に慣れているとついやってしまう)

set value = hoge

下記のように記述するのが正解です。

set value=hoge

#2.if文、for文でのエラー
if文、for文で条件式とカッコの間に
スペースを入れないと、エラーとなる。

if [条件文](
 [処理]
)
rem コマンドの構文が誤っています
if [条件文] (
 [処理]
)
rem 処理が実行される

#3.forループの中で変数が置き換わらない

遅延環境変数の展開というものがあるらしい。
ざっくり対処法を述べると下記をバッチの上部に記載する。

setlocal enabledelayedexpansion

バッチ内では普通、変数の呼び出しにパーセント記号「%」を用いるが
代わりに「!」を用いる。

!value!
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?