
こんにちは。
バッチファイルコマンド(DOSコマンド?)について質問があります。
まずやりたい事としては、
「前月日付のフォルダを自動作成したい」
です。
当月日付をもってくる為には以下の様なコマンドでできました。
for /f "tokens=1-2" %%l in ('date /t') do set today=%%l
for /f "delims=/ tokens=1-2" %%a in ('echo %today%') do set yymm=%%a%%b
このコマンドを実行すると、例えば、%yymm%には200507が入っています。
このコマンドを応用して、前月日付(200506)を取得したいのですが、何か言い方法はありませんでしょうか?
また、新たなやり方あるのでしたら教えて頂けないでしょうか?
No.2ベストアンサー
- 回答日時:
yymmに当月200507が入ったのだから後は簡単です。
set /a コマンドで四則演算が出来ます。月から1を引いて、下二桁が00になったら年またぎなので、年を1引くつまり100を引いて、月を12を足せばよいです。set /a yymm-=1
if %yymm:~-2%==00 set /a yymm+=-100+12
なお、当月を求めるのはお書きの方法でも出来ますが次の方が簡単です。
set yymm=%DATE:~-10,4%%DATE:~-5,2%
No.1
- 回答日時:
残念ながら、標準のコマンドセットの中で、当日以外の日付を取得することは不可能です。
Cygwin等に入っているgnuのdateコマンド等を使用するか、wsh + vbscript等でより柔軟な日付取得ができるコマンドを作成し、バッチファイルから呼ぶかといった話になります。
せめて、WindowsのdateがUNIX系のdateコマンドのように環境変数TZを見て変わるような仕様だったらよかったんですけどね。
その辺のノウハウは、参考URLを見てみてください。
参考URL:http://www.atmarkit.co.jp/fwin2k/win2ktips/419ba …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
LinuxでDVD-RWの初期化
-
UNIX コマンドにおける # や円...
-
SCコマンドでアクセス拒否
-
Linuxコマンドは何の言語で書か...
-
vbaで「最前面に」とする方法は?
-
shutdownコマンドをキャンセル...
-
echo $!の意味を教えてください
-
コマンドプロンプトにおけるコ...
-
Linuxでコマンドが終了しない
-
[バッチファイル]レジストリ値...
-
windows10を使っています。 wsl...
-
相手PCのMACアドレスを知るため...
-
シェルスクリプト内のコピーコ...
-
Excel下部のメニューが消えた
-
cd-romドライブを閉じる コマ...
-
windowsでcatコマンド
-
awkで本日日付の取得
-
JP1での保留Job一覧取得につき...
-
レコーダー換装用のHDDのAVコマ...
-
DOSコマンドについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
shutdownコマンドをキャンセル...
-
UNIX コマンドにおける # や円...
-
至急です、Ubuntuに詳しい方助...
-
ワイルドカードを使ってでフォ...
-
SCコマンドでアクセス拒否
-
コマンドプロンプトにおけるコ...
-
Linuxコマンドは何の言語で書か...
-
compressコマンドってなくなっ...
-
[バッチファイル]レジストリ値...
-
Excel下部のメニューが消えた
-
AIXでの文字コード、改行コード...
-
vbaで「最前面に」とする方法は?
-
Linuxでコマンドが終了しない
-
「環境変数名の編集」ウィンド...
-
UNIXのコマンドが使えないんです
-
アクセスのボタンから指定のワ...
-
JP1での保留Job一覧取得につき...
-
windows10を使っています。 wsl...
-
Solarisでiノード数を確認する...
-
レコーダー換装用のHDDのAVコマ...
おすすめ情報