2011-07-11 4 views
1

バッチコマンドを使用して、あるマシンからローカルディスクにファイルをコピーする必要があります。バッチコマンドファイルコピーを毎日使用する

私のファイルには、日付がdd-mm-yyyy形式で含まれています。しかし、場合には、私はこれを使用していた場合:

-%date:/=-% 

それは「日」と本当にソース端での私のファイル名に関連付けられていない、日付として解釈されます。

私はバットファイルをクリックすると、 "xyz dd-mm-yyy"と言う1つのフォルダをコピーします。私は、ソースマシン上の最後の7日間のフォルダとして今日のフォルダだけをコピーしたいと思います。

EDIT:ソースマシン上の私のフォルダ名はSite_info 11-07-2011であり、明日もう1つのフォルダが同じマシンに名前site_info 12-07-2011で追加されます。今日のフォルダだけをコピーするbatファイルマシンを実行したい。

EDIT2:おかげ種類のサポートのために、まだ私は可能私target.Ifを達成することはできませんよ、次のような状況のためのコマンドを提供してください

私のマシンのパス:C:\ DocumentsとSettings \ユーザー1 \デスクトップ\ SITE_INFO \ Site_info 12-07-2011ここでSite_info 12-07-2011がsite_infoに変更されます13-07-2011

ソースアドレス: - 97.253.72.127 \ Cdma Site_info \ Site_info 12-07-2011明日もう一度フォルダが取得されます\ 97.253.72.127 \ Cdma Site_info \ Site_infoのような日付でこのパスに追加してください。13-07-2011

+0

はあなたが返信することができ、次のようなものかもしれません。 '%date%'の様子を追加することもできます。どの地域設定を使うのか分かりません。 – wimh

答えて

1

「曜日」がある場合は、日付の前の部分で、その部分を取り除きたい場合は、おそらく追加の変数が必要になるでしょう。まず、曜日を切り捨て、すでに行っているように/-に置き換えます。

… 
SET "dateonly=%date:~4%" 
SET "dateonly=%dateonly:/=-" 
… 
COPY \\computer\share\path\whatever-%dateonly%.extdrive:\path\%dateonly%\ 
… 
1

あなたが日付にあなたがそれを望むようにパズルしようとすることができます:例えばアンドリーの提案が動作しない理由を

set mydate=%date:~-10,2%-%date:~-7,2%-%date:~-4% 
xcopy /E /I "Site_info %mydate%" "Copy\Site_info %mydate%" 
関連する問題