5

Windows 7 バッチ ジョブで現在の日付を使用しようとしています。バッチ ジョブは、今日の日付が追加された複数のファイルを開きます。例:

start \\\Directory_Name\Rpts\20130801\0000A060_FileName_20130801.pdf

start \\\Directory_Name\Rpts\20130801\0000P083_FileName_20130801.pdf

start \\\Directory_Name\Rpts\20130801\00007P12_FileName_20130801.pdf

echo を実行する%date%と、「Thu 08/01/2013」と表示されます

実行echo %date:/=%して取得できることはわかっています:「Thu 08012013*」

しかし、「Thu」(今日の日) を削除し、日付を mmddyyyy ではなく「20130801」(yyyymmdd) にフォーマットしたいと考えています。

%date%したがって、最終的にファイルを開くコマンドは、正しいコマンドが挿入され た次のようになります。start \\\Directory_Name\Rpts\%date%\00007P12_FileName_%date%.pdf

どうすればこれができるか知っている人はいますか?

4

4 に答える 4

5

Here is a solution, that is independent of local time format:

for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set datetime=%%I

and then %datetime:~0,8% will give you your YYYYMMDD

于 2013-08-02T20:26:24.063 に答える
0

これを試して。for ループを使用して日付の内容を処理します。

for /f "delims=/ tokens=1-3" %%a in ("%date%") do (
rem Lets name our new variable "rdate" for reverse date
set rdate=%%c%%b%%a
)

それはうまくいくはずです。%rdate% と呼ぶだけです。

これが役に立てば幸いです、モナ

于 2013-08-01T22:59:54.420 に答える