使い方

コマンドの実行結果を変数に格納するには、「for」文を使う。

コード例
setlocal enabledelayedexpansion

set list=
for /f "usebackq delims=''" %%a in (`dir /b .`) do (
    set "name=%%a"
    set list=!list! "!name!"
)

for %%a in (%list%) do (
    set "name=%CD%\%%~a"
    echo "!name!"
)Code language: DOS .bat (dos)
オプション
  • /f 繰り返し処理を実行する
注意事項
  • バッククォート内でパイプを使用する際は、パイプ記号をエスケープして ^| を用いる。

ドキュメント:

for | Microsoft Docs [公式]

参考:

コマンド実行結果を環境変数に代入する方法 – Qiita

cmd.exe で Bash のバックティックのようにコマンドの出力を埋め込む – Qiita

バッチファイルでコマンドの実行結果を変数に格納する | まくまくノート

コマンドの実行結果を変数にセットする | コマンドプロンプトの予感

バッチファイルでコマンド出力展開 | 幸熱日記

バッチファイルでコマンドの実行結果を変数に代入する | treedown’s Report

MS-DOS でコマンドの実行結果を変数に入れる | Studio ODIN

パイプを含むコマンド実行結果を変数に代入したい | DOS プロンプト活用相談室 LOG

for 文 – とほほのバッチ入門 | とほほの WWW 入門

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA