使い方
コマンドの実行結果を変数に格納するには、「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
: 繰り返し処理を実行する
注意事項
- バッククォート内でパイプを使用する際は、パイプ記号をエスケープして
^|
を用いる。
ドキュメント:
参考:
cmd.exe で Bash のバックティックのようにコマンドの出力を埋め込む – Qiita
バッチファイルでコマンドの実行結果を変数に格納する | まくまくノート
コマンドの実行結果を変数にセットする | コマンドプロンプトの予感
バッチファイルでコマンドの実行結果を変数に代入する | treedown’s Report
MS-DOS でコマンドの実行結果を変数に入れる | Studio ODIN