人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

batファイルで以下の処理を実行したい
1.現在の日付(システム日付)を取得して指定したネットワークドライブの中にあるフォルダ上に新規フォルダを作成(2015****等)
2.別ドライブに保存されているファイル(20個弱)を作成したフォルダの中にコピー
3.2でコピーしたファイルをデスクトップにコピー

以上のことを実現したいです。
1をフォルダ固定でコピーするという前提だとxcopyで実現できました。
1を日付で変動する名前にした場合は保存するパスが変更されると思うのですが、どうすれば良いでしょう?
copy のパス部分に%CD%や%作成したフォルダ名%という変数を入れてしまうとbatファイルが正常にどうさしてくれません。
対応方法をご教示願います。

●質問者: keijun5145
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● しおり

日付の変数への設定・展開は、例えば以下のようにできますが、もしかしてIF文やFOR文の中で変数を設定/変更しようとしていますか?
そうなら遅延展開する必要がありますので、set文とsetlocal文のヘルプを読めばわかると思います。
また、VisualBatを使うとデバッグがし易いと思います。

@echo off
setlocal

rem 変数設定
set dt=%date:/=%
set dt=%dt: =0%
set tm=%time::=%
set tm=%tm:.=%
set tm=%tm: =0%
set dst_dir=%dt%_%tm%

rem 変数展開
echo %dst_dir%

endlocal
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ