プロが教える店舗&オフィスのセキュリティ対策術

test01.bat >> YYMMDD結果.txt

コマンドプロンプトのバッチ処理を実行結果をテキストで保存したいのですが、ファイル名を、
「YYMMDD結果.txt」と"YYMMDD"に本日の日にちを入れたいのですが、どのようにすればよいのでしょうか?

A 回答 (3件)

NT4では環境変数の切り出しが動作しません。

2000以降で実行してください。


echo %date%
rem これであなたの環境における日付形式を確認してください。
rem 2005/12/26(YYYY/MM/DD)形式であることを前提とします。

rem %環境変数名%の表記は、環境変数名を内容を参照せよ、の意
rem %環境変数名:~0,4%とは、環境変数名を内容の1文字目(0から数え始める)から4文字取り出せ、の意
rem 2005/12/26なら1からの4文字が年、6からの2文字が月、9からの2文字が日です
rem 5文字目、8文字目は/なので読み飛ばす
rem ただし要求は年2桁なので3からの2文字が年、6からの2文字が月、9からの2文字が日です
set myYYYYMMDD=%Date:~2,4%%Date:~5,2%%Date:~8,2%
rem ここでmyYYYYMMDDには20051226が設定されているはず。確認しましょう。
echo %myYYYYMMDD%

rem いよいよ本題。バッチに引数を渡す。
rem test01.bat >> YYMMDD結果.txtはtest01.bat >> 051226結果.txtであって欲しいから
rem myYYYYMMDDを取得しtest01を起動するバッチをtest00として記述してください。
rem
rem 内容は以下の2行のみ
rem set myYYYYMMDD=%Date:~2,4%%Date:~5,2%%Date:~8,2%
rem call test01 %myYYYYMMDD%

rem これでどうでしょう?
    • good
    • 0
この回答へのお礼

当方、コマンドプロンプトは初心者で、参考書等をみてもさっぱりでした。解説を入れて頂いたおかげで、理解できました!ご丁寧にありがとうございます!!助かりました!!

お礼日時:2005/12/26 13:51

あぁ大失敗。



test01.bat >> %Date:~2,4%%Date:~5,2%%Date:~8,2%%myYYYYMMDD%.txt

だけで良いです。
    • good
    • 0

OSの記述がありませんが、非9x系ならば、ということで。



過去問です。参照してください。

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=285783

この回答への補足

OSはWinXpです。
出来ればコマンドの意味も解説願いたいのですが・・・

補足日時:2005/12/26 11:35
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!