
\\test\配下には、毎月の実績ファイルが下記のように格納されています。
WinXPで、バッチファイルを使用して当月の実績ファイルをコピーしようとしています。
※月がmm表示とm表示で混在しています
●ディレクトリ
\\test\
●ファイル
2010年1月.xlsx
2010年2月.xlsx
・・・
2010年12月.xlsx
今回、mm表記の月名に対応して、下記のようなコマンドを書いてみました。
2010年12月分については想定通りコピーできました。
ただ、mm表記とm表記が混在する場合の書き方が分かりません。
ご教授願えますでしょうか。
※やり方として思いつくのは下記ですが、実装ができません。
(1)下記でファイルが取得できない場合に、yyyy年m月ファイルを取得する、という判断を入れる
(2)mm月の十の位が0だったら一の位のみ使ってyyyy年m月ファイルを取得する
---------+---------+---------+
●書いてみたコマンド
REM ファイル名にyyyy年mm月をセットしてファイル取得
copy \\test\毎月の実績(%yyyy%年%mm%月).xlsx
REM クライアントの本日日付をorgdateという引数にセット
REM 形式は"yyyy/mm/dd"
set orgdate=%date%
REM orgdateから年(yyyy)を抜き出してorgyearにセット
set orgyear=%yyyy/mm/dd:~0,4%
REM orgdateから月(mm)を抜き出してorgmonthにセット
set orgmonth=%yyyy/mm/dd:~5,2%
REM ファイル名にyyyy年mm月をセットしてファイル取得
copy \\test\毎月実績(%yyyy%年%mm%月).xlsx
No.1ベストアンサー
- 回答日時:
環境変数の一部取り出しの方法をご存じなのに、あと何がわからないのでしょう?
全体でこんな感じですかね。
set orgdate=%date%
set orgyear=%orgdate:~0,4%
set orgmonth=%orgdate:~5,2%
if %orgmonth:~0,1% == 0 orgmonth=%orgmonth:~1,1%
copy \\test\毎月実績%orgyear%年%orgmonth%月.xlsx ~~
ありがとうございました。
ifの書き方、変数に再帰的に値を渡すことができるという点、非常に勉強になりました。
notnotさんの教えてくださった方法を参考に、下記のとおりとしました。
※元々乗っけていたものには、変数名に誤りがありました。
---------+---------+---------+
REM クライアントの本日日付をorgdateという引数にセット
REM 形式は"yyyy/mm/dd"
set orgdate=%date%
REM orgdateから年(yyyy)を抜き出してorgyearにセット
set orgyear=%orgdate:~0,4%
REM orgdateから月(mm)を抜き出してorgmonth_preにセット
set orgmonth=%orgdate:~5,2%
REM monthの十の位が0の場合、orgmonthは再帰的にorgmonthの一桁目のみをセット
if %orgmonth:~0,1%==0 set orgmonth=%orgmonth:~1,1%
REM ファイル名にyyyy年mm月をセットしてファイル取得
copy \\test\毎月実績%orgyear%年%orgmonth%月.xlsx
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
USBメモリが接続されているか確...
-
.NETアプリを作ったときの .man...
-
コマンドプロンプトで作成日時...
-
Latexで図番号だけを「図1.1」...
-
Batファイルをバイナリ形式にす...
-
VBAのバイナリ出力について
-
5ちゃんねるに画像を投稿した...
-
アクセス 壊れた? 「ファイ...
-
binファイルを解凍したいの...
-
ダウンロードしたファイルがind...
-
公文書のxmlファイルの開き方が...
-
C言語でクイズゲームを作らな...
-
ffftpでアップすると文字化けを...
-
エクセルのVBAについて とある...
-
ftpコマンドを実行すると「425 ...
-
コマンドプロンプトのエラーに...
-
win10の「フォト」で、「次へ」...
-
大量のフォルダからひとつのフ...
-
一括でフォルダと同じ名前にフ...
-
コマンドプロンプトの「%1」と...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「営業秘密の漏洩」について
-
アクセス 壊れた? 「ファイ...
-
#include <Windows.h>というヘ...
-
.NETアプリを作ったときの .man...
-
Latexで図番号だけを「図1.1」...
-
コマンドプロンプトで作成日時...
-
公文書のxmlファイルの開き方が...
-
jarファイル
-
リンクの張り付けかたを教えて...
-
binファイルを解凍したいの...
-
監視ツールを入れさせられまし...
-
自分で作成した重要ファイルを...
-
「ブルーファイル」と「グリー...
-
C言語---ファイルに出力したデ...
-
Seasar2のdiconファイルの読み方
-
コマンドプロンプトで、指定し...
-
バッチ処理で追記コピーしたい
-
C#でログファイルにファイルパ...
-
ファイルが開かれているかどう...
-
HTAのウィンドウを閉じるには・...
おすすめ情報