私はバッチ コードのこの断片を理解しようとしていますが、それが実際に何をしているのか想像さえできません。
私はこの3行と混同しています:
echo @prompt set date=$d$_set time=$t$h$h$h > {a}.bat
%comspec% /e:2048 /c {a}.bat > {b}.bat
for %%v in ({b}.bat del) do call %%v {?}.bat
彼らは何をしますか?
私はバッチ コードのこの断片を理解しようとしていますが、それが実際に何をしているのか想像さえできません。
私はこの3行と混同しています:
echo @prompt set date=$d$_set time=$t$h$h$h > {a}.bat
%comspec% /e:2048 /c {a}.bat > {b}.bat
for %%v in ({b}.bat del) do call %%v {?}.bat
彼らは何をしますか?
Win9xの非常に古い古い古い機能のように見えるため、その例がどこにあるのか本当にわかりません。
最初の echo コマンドは、" {a}.bat "という名前のファイルに目的のコマンドを出力します(出力されたコマンドは、OS で日付と時間を設定します)。
2 番目のコマンドは、バイト単位の環境サイズ ( /E:xxxx )で CMD (CMD パスは%comspec%変数に格納されます) のみを実行し、出力されたコマンドを引数のように{a}.bat内に渡し、標準出力を出力します。 2 番目のファイル ( {b}.bat )
3 番目の FOR コマンドは、2 番目のトークン ( del ) を、動的演算子?を使用したコマンドのように使用します。0 または 1 文字に一致するため、ループは次のようなコマンド ループを実行します。
del {a}.bat
del {b}.bat
これがお役に立てば幸いです。