今回は小ネタ。
シェルスクリプトだと以下のようにするだけであっさりとコマンドの実行結果を変数に格納することができる。
$hogehoge=`<コマンド>`
一方でWindowsバッチだとちょっと一手間がいる。
長くなるけど以下のようにすればOK。
for /f "usebackq" %%i in (`"コマンド"`) do set hogehoge=%%i
for文でコマンドを実行してそれを変数に格納するだけ。
"usebackq"のところのオプションにtokensとかdelimsを追加すれば実行結果から更に必要な部分だけを抜き出すことが可能。
それだけだとつまらないので具体例。
コンピュータ名を変数に格納してみる。
for /f "usebackq" %%i in (`"コマンド"`) do set HOSTNAME=%%i echo %HOSTNAME%
この手法はよく忘れがちなので、自分の忘備録としても残しておくw
そもそもバッチを今更あんまり使わんやろって言われたらそれまでなんですがwwww
0 件のコメント:
コメントを投稿