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

現在Windows NTにてBATファイルを使用してテキストファイルにて一部のデーターを
抽出している作業を行っております。
その中で時刻を載せているのですが、今まではAM/PM標識(01:03pや01:03a)のようにしていたのですが、
今後24時間表示(01:03pを13:03)に切り替えなければいけなくなってしまいました。

本当なら、時刻の設定で切り替えればいいのですが、使用しているシステムにて
AMやPMを読みにいっている状態で変更が不可の状態になってしまいました。

その為、BATファイルにて切替えを行わなくてはいけないのですが方法がわかりません
申し訳ありませんが教えて下さい。

現在のtime /tの内容
time /t >A.txt
01:03p(表示内容)

これをこちらにしたいです
time /t >A.txt
13:03(表示内容)

A 回答 (4件)

NT4は手元に無いのですが、2000やXPだと%TIME%は常に24時制なのでもし同じなら、


set T=%TIME: =0% (9:59までは先頭空白なのでそれをゼロにする)
set T=%T:~0,5%
echo %T%
が簡単です。それでだめだと、
for /f %%A in ('time/t') do set T=%%A
set T1=%T:~0,2%
set T2=%T:~3,2%
set T3=%T:~5%
if %T3%==p set /a T1=1%T1%-100+12
set T=%T1%:%T2%
echo %T%
    • good
    • 0
この回答へのお礼

ありがとうございます。非常に役に立ちました。

お礼日時:2005/05/13 09:57

#1の者です。



ごめんなさい、OSの設定はいじれない、という前提だったのですね。きちんと読まずに回答してしまいました。失礼しました。
    • good
    • 0

時刻の表示形式が変更できないのであれば、


HH:MM形式で時刻を表示するプログラムを作るのが良いと思います。
例えば、VBScriptで
WScript.Echo right("0" & hour(time),2) & ":" & right("0" & minute(time),2)
という内容のファイルを
time.vbsという名前で保存したとして
バッチの
time /t >A.txt

cscript //Nologo time.vbs >A.txt
に置き換えます
    • good
    • 0

手元にNTマシンが無いので確認できませんが、OSの時刻表示設定に依存している可能性はありませんでしょうか?



WindowsXPだと、コントロールパネル→地域と言語のオプション→カスタマイズ のところで変更できます。
NTでも同様の設定はあるはずです。たしか。
    • good
    • 0

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