
日付をファイル名に出力したいと思い 以下のバッチを作りました。
20101109.txt というファイルが作成されます。
下の方式で、日本語OSだとログが出力されるのですが、言語を英語に変更するとログが出力できません。(例 地域の言語オプションで変更)
英語OSで 時刻が12時間表記の場合にもログが出力されるにはどう書けばいいのか教えてもらえますでしょうか?
実際に書いていただけると助かります・・・
よろしくお願いします。
@echo off
set dt=%date:~-10%
set tm=%time: =0%
set fname=C:\test\test#%dt:~0,4%%dt:~5,2%%dt:~8,2%%.txt
echo test >> %fname% 2>>&1
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>英語OSで 時刻が12時間表記の場合
ログの書式が YYYYMMDD であれば、とりあえず、時間は関係ないですよね?
書式の差を環境変数からは取得できないので、%DATE% の値を正規表現を使って日付書式を判別する、と言うのでどうでしょう。
以下は US か JP かを判別しています。
YYYY/MM/DD でも MM/DD/YYYY でも TEST#yyyymmdd.txt を出力可能です。
@echo off
REM 書式は気にせず、まずはDATEを丸ごと格納
set dt=%date%
REM 日付書式がYYYY/MM/DDかかMM/DD/YYYYかを判別する
echo %dt% | findstr -b [0-9][0-9][0-9][0-9]/[0-9][0-9]/ >nul
if "%ERRORLEVEL%" == "0" set dtFmt=JP
echo %dt% | findstr -b [0-9][0-9]/[0-9][0-9]/ >nul
if "%ERRORLEVEL%" == "0" set dtFmt=US
REM 日付書式に合わせてdtをセットしなおす
if "%dtFmt%" == "JP" set dt=%dt:~0,4%%dt:~5,2%%dt:~8,2%
if "%dtFmt%" == "US" set dt=%dt:~6,4%%dt:~0,2%%dt:~3,2%
set tm=%time: =0%
set fname=C:\test\test#%dt%.txt
echo test >> %fname% 2>>&1
No.1
- 回答日時:
ここらへんからの応用ですかね?
こういった作業をしたことはないのですが……。
>言語を英語に変更すると
C:\>echo %date%
11/10/2010 Wed
こんなんなりました。
これで、後ろから切り出すと…
C:\>echo %date:~-10%
0/2010 Wed
…これでは、ファイル名として使用できませんよね?
言語設定を確認して書き換えるようにするくらいしか浮かばないですねぇ。
対処方法が…出てこないです。
すみませんが。
# Windowsでそういう処理やらないしなぁ…。
# Cで組めばサクっと処理できますが…親プロセス(コマンドプロンプト)の環境変数、操作できたっけな…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 1つのファイルを3つのフォルダにファイル名を【明日の日付】にして、コピーをしたい 2 2022/12/21 17:43
- Excel(エクセル) エクセルVBA、間違っているコード内容を正して頂けませんか? エクセルワークシートに納品書を作ったの 2 2023/08/02 21:13
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Visual Basic(VBA) Excel VBA でデータ転記について 1 2023/03/07 19:11
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Excel(エクセル) エクセルVBA、ファイル名をセルの値で保存の方法を教えてください。 おそれいります。こちらで数々のエ 6 2023/06/30 22:17
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) フォルダ内のエクセルファイルを開かずにデータ採取する関数式 2 2022/12/22 22:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチでテキストファイルから...
-
バッチファイルでDirで取得した...
-
バッチファイルで常に最新の現...
-
大量のフォルダからひとつのフ...
-
binファイルを解凍したいの...
-
コマンドプロンプトのエラーに...
-
win10の「フォト」で、「次へ」...
-
これってパソコンの最適化が完...
-
テキストファイルで提出とは?
-
バッチ処理でファイルの中身を...
-
stable diffusionのインストー...
-
VBScriptでコマンドプロンプト...
-
公文書のxmlファイルの開き方が...
-
コマンドプロンプトの「%1」と...
-
ハードディスク上書き用大容量...
-
Windows10にデュアルブートでXP...
-
VBSでコマンドプロンプトのカレ...
-
一太郎がイントラで開けません...
-
x-アプリのMD取り込みエラーに...
-
.txtではなく.logの方が良いの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチでテキストファイルから...
-
バッチファイルで昨日の日付を取得
-
子バッチ内のキー入力処理へ自...
-
バッチファイルでDirで取得した...
-
コマンドプロンプト標準出力と...
-
バッチファイルで常に最新の現...
-
DOSのバッチで、変数中のファイ...
-
VBアプリケーションで終了コー...
-
コマンドプロンプトで2ヶ月前3...
-
IPアドレスの第3オクテットだ...
-
コマンドプロンプト画面の閉じ...
-
コマンドプロンプト(バッチファ...
-
絶対パス名からファイル名を取...
-
バッチファイル テキストファイ...
-
Excelで住所録を地域ごとに振り...
-
コマンドプロンプトでファイル...
-
batの変数を直接vbsのプログラ...
-
echoとsystem関数について
-
コマンドプロンプト(バッチ)...
-
呼び出し元バッチを知るには?
おすすめ情報