カテゴリー
Microsoft

【Windows】実行すると現在日時を名前にした空ファイルを生成するバッチ!

目的

  • バッチを外部から起動するアプリがある。
  • バッチの指定がうまくいっているかどうかを手軽に確認したい。
  • どこから呼び出したかわかるように、引数も設定したい。
  • そこで、バッチが動いたかどうかが判断できる簡単なプログラムを作る。

バッチコード

@echo off

rem
rem 現在年月日時分秒を名前にした空ファイルを生成します。
rem

rem このバッチが存在するフォルダをカレントに設定
pushd %0\..
cls

rem YYYYMMDD 形式で年月日を取得 (月日の先頭が空白の場合は 0 で置換)
set today=%date:/=%

rem HHMMSS 形式で現在時刻を取得 (先頭が空白の場合は 0 で置換)
set temp=%time: =0%
set now=%temp:~0,2%%temp:~3,2%%temp:~6,2%

rem 年月日時分秒に引数を付与した文字列を名前にした空ファイルを生成
type nul > %today%%now%%1%

exit

確認

ファイルをそのまま実行編

エクスプローラーで TypeTodayNow.bat を実行いたします。

すると、バッチファイルのあるフォルダに 20151215193147 といった名前のファイルが生成されます。

ファイルの中身は、空です。

コマンドプロンプトで引数渡して実行編

TypeTodayNow.bat "てすと"

結果、バッチファイルのあるフォルダに、20151215193352てすと といった名前のファイルが生成されます。

そして、コマンドプロンプトが終了します。

ですので、コードの最後の exit は外せばコマンドプロンプトは終了しませんので、継続して作業したい場合は外したほうがよいかしら。

おまけ。バッチの基本

  • コマンドプロンプトのコマンドをつなげてファイルにまとめるとバッチになる。
  • Shift-JIS で記述すること。
  • 完成したら、コマンドプロンプトからの実行や、エクスプローラーからダブルクリックなどで実行できる。

おわりに

はじめてのバッチ作成でしたの♪Unix のシェルのような感じかしらね。これも使いドコロを選びそうですけれども、上手に利用すればわたくしたちの生活を便利にしてくださいますわね♪

次のページが参考になりました!ありがとう存じます♪

以上です。

コメントを残す