2016-08-30 10 views
0

今日の日付のフォルダを作成するバッチファイルを作成しようとしていて、そのフォルダに3つのファイルをコピーしています。私は、さまざまな解決策を見つけ出すことからこの問題を解決しましたが、私の理解の限界に達しました。書かれているように、ファイルはフォルダーを作成し、私が?????を置き換えるとファイルをコピーします。フォルダを使用していますが、前に作成したフォルダの参照方法はわかりません。私は解決策を探しましたが、正直なところ、私が成功裏に実装できたものは見つかりませんでした。どんな助けでも大歓迎です。バッチファイルを作成して日付に名前を付け、新しいフォルダにファイルを移動します

@echo off 
for /f "tokens=1-5 delims=/ " %%d in ("%date%") do mkdir c:\Users\HP-ALT\Desktop\databasebackups\%%e-%%f-%%g 
move C:\Users\HP-ALT\Desktop\anyfile1.db C:\Users\HP-ALT\Desktop\databasebackups\??????? 
move C:\Users\HP-ALT\Desktop\anyfile2.db C:\Users\HP-ALT\Desktop\databasebackups\??????? 
move C:\Users\HP-ALT\Desktop\anyfile3.db C:\Users\HP-ALT\Desktop\databasebackups\??????? 
+0

コンソールウィンドウに「echo%date%」と入力し、返される内容を入力してください。 – Compo

+0

そのコマンドが戻ってきます。Tue 08/30/2016 –

答えて

0

ちょうど変数...使用:

for /f "tokens=1-5 delims=/ " %%d in ("%date%") (
    SET DayMonth=%%e 
    SET MonthDay=%%f 
    SET Year=%%g 
) 

し、ディレクトリを作成するために、これらの変数を使用してコピーしたファイルを

0

これは、それが良いでしょう

@Echo Off 
SetLocal 
Set "parentPath=C:\Users\HP-ALT\Desktop\databasebackups" 
Set "Today=%Date~-10%" 
Set "newDirName=%Today:/=-%" 
If Not Exist "%parentPath%\%newDirName%\" (
    MD "%parentPath%\%newDirName%"2>Nul||Exit/B) 
Move… 
0

に沿ってあなたを助ける必要があります%date%が現在の日付形式を返すため、WMICユーティリティを使用して年、月、日の情報を抽出するdにWindowsの短い形式の日付を地域設定として定義した場合、現在のインストールで短い日付形式がYYYY-MM-DD以外のものに設定されていると、問題が発生する可能性があります。

@echo off 
    SETLOCAL ENABLEDELAYEDEXPANSION 
    FOR /F "skip=1 tokens=1-6" %%A IN ('WMIC ^Path Win32_LocalTime Get Day^,Hour^,Minute^,Month^,Second^,Year /Format:table') DO (
     IF %%A GTR 0 (
     SET Day=%%A 
     SET Hour=%%B 
     SET Min=%%C 
     SET Month=%%D 
     SET Sec=%%E 
     SET Year=%%F 
     ) 
    ) 
    if %Month% LSS 10 set Month=0%Month% 
    if %Day% LSS 10 set Day=0%Day% 
    if %Min% LSS 10 set Minute=0%Minute% 
    if %Hour% LSS 10 set Hour=0%Hour% 

    set now=%year%-%month%-%day%_%hour%-%min%-%sec% 
    set now=%now% 
    mkdir %now% 
関連する問題