2012-02-23 5 views
5

здесь мой сценарий для перемещения файлов старше определенного количества дней-Robocopy перемещает файлы старше

mkdir F:\TempRemoval 
robocopy "F:\Example" "F:\TempRemoval" /move /e /minage:1 
del "F:\TempRemoval\*.*" /f /s /q 
rmdir F:\TempRemoval /s /q 
exit 

Единственная проблема у меня есть то, что некоторые файлы мне нужно добавляются в эту папку, которые являются 3- 4 года. Я знаю решение, которое будет работать, но я не уверен, как его кодировать.

Я хочу Robocopy только искать дату до первого уровня папок, т.е.

c:\folders\delete 

Я хочу, чтобы искать дату только файлы и папки, которые указаны в «папки» - и переместить весь папки и подпапки/файлы на основе этого результата.

Есть ли все равно для этого?

ответ

5

Посмотрите на синтаксис/использование Robocopy:

/MAXAGE:n :: MAXimum file AGE - exclude files older than n days/date. 
    /MINAGE:n :: MINimum file AGE - exclude files newer than n days/date. 
    /MAXLAD:n :: MAXimum Last Access Date - exclude files unused since n. 
    /MINLAD:n :: MINimum Last Access Date - exclude files used since n. 
       (If n < 1900 then n = n days, else n = YYYYMMDD date). 

Вот полный Robocopy Синтаксис:

------------------------------------------------------------------------------- 
    ROBOCOPY  ::  Robust File Copy for Windows 
------------------------------------------------------------------------------- 

    Started : Thu Feb 23 12:25:50 2012 

       Usage :: ROBOCOPY source destination [file [file]...] [options] 

      source :: Source Directory (drive:\path or \\server\share\path). 
     destination :: Destination Dir (drive:\path or \\server\share\path). 
       file :: File(s) to copy (names/wildcards: default is "*.*"). 

:: 
:: Copy options : 
:: 
       /S :: copy Subdirectories, but not empty ones. 
       /E :: copy subdirectories, including Empty ones. 
      /LEV:n :: only copy the top n LEVels of the source directory tree. 

       /Z :: copy files in restartable mode. 
       /B :: copy files in Backup mode. 
       /ZB :: use restartable mode; if access denied use Backup mode. 
      /EFSRAW :: copy all encrypted files in EFS RAW mode. 

    /COPY:copyflag[s] :: what to COPY for files (default is /COPY:DAT). 
         (copyflags : D=Data, A=Attributes, T=Timestamps). 
         (S=Security=NTFS ACLs, O=Owner info, U=aUditing info). 

      /DCOPY:T :: COPY Directory Timestamps. 

       /SEC :: copy files with SECurity (equivalent to /COPY:DATS). 
      /COPYALL :: COPY ALL file info (equivalent to /COPY:DATSOU). 
      /NOCOPY :: COPY NO file info (useful with /PURGE). 

      /SECFIX :: FIX file SECurity on all files, even skipped files. 
      /TIMFIX :: FIX file TIMes on all files, even skipped files. 

      /PURGE :: delete dest files/dirs that no longer exist in source. 
       /MIR :: MIRror a directory tree (equivalent to /E plus /PURGE). 

       /MOV :: MOVe files (delete from source after copying). 
       /MOVE :: MOVE files AND dirs (delete from source after copying). 

    /A+:[RASHCNET] :: add the given Attributes to copied files. 
    /A-:[RASHCNET] :: remove the given Attributes from copied files. 

      /CREATE :: CREATE directory tree and zero-length files only. 
       /FAT :: create destination files using 8.3 FAT file names only. 
       /256 :: turn off very long path (> 256 characters) support. 

      /MON:n :: MONitor source; run again when more than n changes seen. 
      /MOT:m :: MOnitor source; run again in m minutes Time, if changed. 

     /RH:hhmm-hhmm :: Run Hours - times when new copies may be started. 
       /PF :: check run hours on a Per File (not per pass) basis. 

      /IPG:n :: Inter-Packet Gap (ms), to free bandwidth on slow lines. 

       /SL :: copy symbolic links versus the target. 

      /MT[:n] :: Do multi-threaded copies with n threads (default 8). 
         n must be at least 1 and not greater than 128. 
         This option is incompatible with the /IPG and /EFSRAW options. 
         Redirect output using /LOG option for better performance. 

:: 
:: File Selection Options : 
:: 
       /A :: copy only files with the Archive attribute set. 
       /M :: copy only files with the Archive attribute and reset it. 
    /IA:[RASHCNETO] :: Include only files with any of the given Attributes set. 
    /XA:[RASHCNETO] :: eXclude files with any of the given Attributes set. 

/XF file [file]... :: eXclude Files matching given names/paths/wildcards. 
/XD dirs [dirs]... :: eXclude Directories matching given names/paths. 

       /XC :: eXclude Changed files. 
       /XN :: eXclude Newer files. 
       /XO :: eXclude Older files. 
       /XX :: eXclude eXtra files and directories. 
       /XL :: eXclude Lonely files and directories. 
       /IS :: Include Same files. 
       /IT :: Include Tweaked files. 

      /MAX:n :: MAXimum file size - exclude files bigger than n bytes. 
      /MIN:n :: MINimum file size - exclude files smaller than n bytes. 

      /MAXAGE:n :: MAXimum file AGE - exclude files older than n days/date. 
      /MINAGE:n :: MINimum file AGE - exclude files newer than n days/date. 
      /MAXLAD:n :: MAXimum Last Access Date - exclude files unused since n. 
      /MINLAD:n :: MINimum Last Access Date - exclude files used since n. 
         (If n < 1900 then n = n days, else n = YYYYMMDD date). 

       /XJ :: eXclude Junction points. (normally included by default). 

       /FFT :: assume FAT File Times (2-second granularity). 
       /DST :: compensate for one-hour DST time differences. 

       /XJD :: eXclude Junction points for Directories. 
       /XJF :: eXclude Junction points for Files. 

:: 
:: Retry Options : 
:: 
       /R:n :: number of Retries on failed copies: default 1 million. 
       /W:n :: Wait time between retries: default is 30 seconds. 

       /REG :: Save /R:n and /W:n in the Registry as default settings. 

       /TBD :: wait for sharenames To Be Defined (retry error 67). 

:: 
:: Logging Options : 
:: 
       /L :: List only - don't copy, timestamp or delete any files. 
       /X :: report all eXtra files, not just those selected. 
       /V :: produce Verbose output, showing skipped files. 
       /TS :: include source file Time Stamps in the output. 
       /FP :: include Full Pathname of files in the output. 
      /BYTES :: Print sizes as bytes. 

       /NS :: No Size - don't log file sizes. 
       /NC :: No Class - don't log file classes. 
       /NFL :: No File List - don't log file names. 
       /NDL :: No Directory List - don't log directory names. 

       /NP :: No Progress - don't display percentage copied. 
       /ETA :: show Estimated Time of Arrival of copied files. 

      /LOG:file :: output status to LOG file (overwrite existing log). 
     /LOG+:file :: output status to LOG file (append to existing log). 

     /UNILOG:file :: output status to LOG file as UNICODE (overwrite existing log). 
     /UNILOG+:file :: output status to LOG file as UNICODE (append to existing log). 

       /TEE :: output to console window, as well as the log file. 

       /NJH :: No Job Header. 
       /NJS :: No Job Summary. 

      /UNICODE :: output status as UNICODE. 

:: 
:: Job Options : 
:: 
     /JOB:jobname :: take parameters from the named JOB file. 
     /SAVE:jobname :: SAVE parameters to the named job file 
       /QUIT :: QUIT after processing command line (to view parameters). 
       /NOSD :: NO Source Directory is specified. 
       /NODD :: NO Destination Directory is specified. 
       /IF :: Include the following Files. 
+0

Я видел синтаксис .. но новее, чем не решит мою проблему, просто потому, что я не знаю дат определенных файлов - он меняется. Мне нужно robocopy, чтобы просто сканировать первый уровень, если возможно – Jlouisfoster

+0

эй, можем ли мы дать параметры майора как дату и время? –

+0

Вы попробовали Google для ответа? Я нашел это в первых нескольких результатах: http://social.technet.microsoft.com/Forums/en-US/ITCG/thread/b5cb685e-32f6-4eed-855d-e710ca4b203f – tcables

0

Вы можете использовать/XD, чтобы исключить каталоги,/XF, чтобы исключить файлы
/Maxage: n может использоваться, чтобы исключить файлы старше n дн.,
но afaik it only wor ks за целые дни

Кроме того, если вам нужно только переместить файлы, а не каталоги,
вы можете изменить/ПЕРЕМЕЩАТЬ в/MOV.
Не уверен, что это также исключает файлы в этих каталогах.

4

Даже если вы укажете даты с maxage, он все равно сканирует всю папку, чтобы определить отметку времени. Иногда это может быть довольно длинным, если у вас много папок и файлов. Вы можете захотеть сделать XD-переключатель, чтобы robocopy исключил папку для сканирования.

Если ваша папка датирована такими, как «2012-xx-xx .... 2014-xx-xx» , вы не можете легко исключить их с помощью xd. Например,

roboycopy источник Dest/E/XD 2014-012014-02

Это будет копировать только папки новые или равные 2014-03

Делая это, я сокращаю время резервного копирования с 20 минут до 2 минут вместо использования maxage.

Смежные вопросы