BLOGTIMES
2019/01/18

bat ファイルで YYYYMMDDHHMMSS を得るには

  bat  sh 
このエントリーをはてなブックマークに追加

バッチ処理を書いていると、ログやファイル名などに現在のタイムスタンプをつけておきたいことがあります。
Linux のシェルスクリプトだと、以下のような感じで date コマンドを使えば簡単に YYYYMMDDHHMMSS の文字列を得ることができます。

date '+%Y%m%d%H%M%S'

ところが、Windows の bat ファイルの場合には一筋縄ではいきません。
いろいろ調べてみて、同様の操作が一撃ではできないことが分かりました。
とりあえず以下のように2行で書く感じにすれば YYYYMMDDHHMMSS が得られるようです。

set ts=%time: =0% set ts=%date:~0,4%%date:~5,2%%date:~8,2%%ts:~0,2%%ts:~3,2%%ts:~6,2% echo %ts%

参考


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/10712
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン