質問: バッチファイルの場所を事前に指定せずに、バッチスクリプトの出力をテキストファイルにダンプする 私はこの方法で出力を取得できることを認識しています(標準とエラーの両方をキャプチャするため):[batchfilepath] > [logfilepath] 2>&1 または、標準出力の場合は次のようになります。c:\mybatchfile.bat > output.txt ただし、バッチファイル自体の場所を指定せずにこれを行う方法はありますか?たとえば、c:\ myfolder\mybatch.cmdを実行(ダブルクリックして実行)し、バッチファイルを終了(または完了)した後、c:\ myfolder\mybatch.txtに出力があると仮定します。もしそうなら、どのコードをバッチファイル自体に含める必要がありますか?
回答: コマンドは丸括弧で囲みます。 mybatchfile.bat:@echo off rem setlocal enabledelayedexpansion ( echo line one echo line two echo line three ) > "%~dpn0.txt" 括弧内の変数は、(が見つかりました。評価を遅らせるにはenabledelayedexpansionを使用します。