wtorek, 24 lutego 2015

Robocopy

http://burpee.smccme.edu/studenthowtos/robocopy.htm

Przełączniki i czym one są:
Opcje kopiowania:

                 / S :: skopiować podkatalogi, ale nie te puste.
                 / E :: skopiować podkatalogi, łącznie z pustymi.
             / LEV: n :: kopiować tylko z najlepszymi n poziomach drzewa katalogów source.

                 / Z :: kopiować pliki w trybie umożliwiającym ponowne uruchomienie.
                 / B :: kopiować pliki w trybie kopii zapasowej.
                / ZB :: użyć trybu restartowalne; jeśli odmowa dostępu użycia trybu kopii zapasowej.
            / EFSRAW :: skopiować wszystkie pliki zaszyfrowane w trybie EFS RAW.

  / KOPIA: copyflag [s] :: co skopiować pliki (domyślnie / KOPIA: DAT).
                       (Copyflags: D = Dane, A = Atrybuty, T = Znaczniki czasu).
                       (S = Bezpieczeństwo = list kontroli dostępu NTFS, O = Właściciel informacji, U = Informacje audyt).

           / DCOPY: T :: KOPIA katalog Znaczniki czasu.

               / SEC :: skopiować pliki z bezpieczeństwem (odpowiednik / kopiowania: DAT).
           / COPYALL :: skopiować wszystkie plik informacji (odpowiednik / kopiowania: DATSOU).
            / NOCOPY :: egzemplarza nr informacje o pliku (przydatne z / oczyszczające).

            / Secfix :: zabezpieczeń plików FIX na wszystkich plikach, nawet pominięte pliki.
            / TIMFIX :: razy plików FIX na wszystkich plików, nawet pominięte pliki.

             / USUŃ :: usuwanie plików / katalogów DEST, które już nie istnieją w źródle.
               / MIR :: lustrze drzewo katalogów (odpowiednik / E plus / oczyszczające).

               / MOV :: Przenoszenie plików (usuwanie ze źródła po skopiowaniu).
              / MOVE :: pliki przenieść i dirs (usuwanie ze źródła po skopiowaniu).

     / +: [RASHCNET] :: dodaj podanych atrybutów, aby skopiowane pliki.
     / -: [RASHCNET] :: usunięcia podanych atrybutów z kopiowanych plików.

            / TWORZENIE :: TWORZENIE drzewo katalogów i zero długości tylko pliki.
               / FAT :: tworzyć pliki docelowe przy użyciu tylko 8,3 FAT nazwy plików.
               / 256 :: wyłączyć bardzo długą drogę (> 256 znaków) wsparcia.

             / MON: n :: źródło Monitor; uruchomić ponownie, gdy więcej niż n zmiany widoczne.
             / MOT: m :: źródło monitora; uruchomić ponownie w m minut czasu, gdy zmieniło.

      / RH: ggmm-ggmm :: Run Hours - czasy, kiedy można rozpocząć nowe egzemplarze.
                / PF :: sprawdzić uruchomić godzin na jednym pliku (nie na przejście) podstawie.

             / IPG: n :: Inter-Packet Gap (ms), do wolnego pasma na powolnych.

                 / SL :: skopiować linki symboliczne w stosunku do celu.

Plik opcji wyboru:

                 / :: Skopiować tylko pliki z ustawionym atrybutem archiwalnym.
                 / M :: skopiować tylko pliki z atrybutem Archiwum i zresetować.
    / IA: [RASHCNETO] :: Zawiera tylko pliki z dowolnego z podanych atrybutów określonych.
    / XA: [RASHCNETO] :: wykluczyć pliki z jednego z podanych atrybutów określonych.

 / File XF [plik] ... :: wyklucza równoważenia plików imiona / ścieżki / symbole wieloznaczne.
 / XD dirs [Dirs] ... :: wykluczyć Katalogi dopasowanie imiona / ścieżki.

                / XC :: wyłączyć pliki zmieniło.
                / XN :: wykluczyć Nowsze plików.
                / XO :: wykluczyć starsze pliki.
                / XX :: wyklucza dodatkowych plików i katalogów.
                / XL :: wykluczyć Lonely plików i katalogów.
                / IS :: Dołącz samych plików.
                / IT :: Dołącz pliki modyfikowane.

             / MAX: n :: Maksymalny rozmiar pliku - wyłączyć pliki większe niż n bajtów.
             / MIN: n :: minimalny rozmiar pliku - wyłączyć pliki mniejsze niż n bajtów.

          / MAXAGE: n :: MAXymalna plików WIEK - wyłączyć pliki starsze niż n dni / daty.
          / MINAGE: n :: MINimum plików WIEK - wyłączyć pliki nowsze niż N dni / daty.
          / MAXLAD: n :: MAXymalna Data ostatniego dostępu - wyłączyć pliki nieużywane od n.
          / MINLAD: n :: MINimum Data ostatniego dostępu - wyłączyć pliki używane od n.
                       (Jeśli n <1900 -="" 1="" 2="" 30="" 67="" ::="" a="" ada="" ani="" b="" bajt="" bajty="" bami:="" brak="" by="" c="" cie="" ciu.="" czas="" czasowych="" czasu="" czeka="" czenia="" czone="" d="" dla="" dni="" do="" domy="" dost="" druga="" dst.="" dst="" dzy="" egzemplarzy:="" extra="" fft="" font="" fp="" godzinnych="" granulacji="" i="" jak="" jako="" jest="" junction.="" k="" katalog="" kopiuj="" l="" liczb="" lista="" lne.="" lne="" lnie="" lnym="" logowania:="" mi="" milion.="" n="" na="" ne="" nic="" nie="" nieudanych="" obejmuj="" oczekiwania="" opcje:="" opcje="" ormalnie="" pe="" plik="" pliki="" pliku="" po="" pokazuj="" pomini="" pon="" ponownie="" ponownymi="" pr="" produkcji.="" produkcji="" przeciwnym="" pu="" punkt="" punkty="" r:="" r="" raport="" razie="" razy="" reg="" rejestrze="" rozmiary="" rrrrmmdd="" sekund.="" sharenames="" tbd="" te.="" te="" to="" ts="" tylko="" usuwa="" v="" w.="" w:="" w="" wszystkie="" wybrane.="" wydruk="" wyj="" wyklucza="" wykluczy="" x="" xj="" xjd="" xjf="" zak="" zapisz="" zawiera="" zdefiniowane="" znaczki="" znacznik="" zrekompensowa="">                / NS :: Nie Rozmiar - nie zalogujesz rozmiary plików.
                 / NC :: No Class - nie zalogujesz klas plików.
               / NFL :: Nie Lista plików - nie zalogujesz nazwy plików.
               / NDL :: Nie Lista katalog - nie zalogujesz nazwy katalogów.

                / NP :: Nie Progress - nie wyświetlają% kopiowane.
               / ETA :: pokaż Przewidywany czas przybycia kopiowanych plików.

          / LOG: stan wyjścia do pliku :: pliku dziennika (nadpisać istniejący dziennik).
         / LOG +: stan wyjścia do pliku :: pliku dziennika (Dołącz do istniejącego dziennika).

       / UNILOG: stan wyjścia do pliku :: REJESTR plik w formacie Unicode (nadpisać istniejący dziennik).
      / UNILOG +: stan wyjścia do pliku :: REJESTR plik w formacie Unicode (dołączyć do istniejącego dziennika).

               / TEE :: wyjście do konsoli okno, jak również w pliku dziennika.

               / NJH :: Nie Praca nagłówka.
               / NJS :: Nie Podsumowanie pracy.

           / Unicode :: Stan wyjścia w formacie Unicode.


Opcje pracy:

       / PRACA: jobname :: podjąć parametrów z pliku o podanej nazwie JOB.
      / SAVE: jobname :: SAVE parametry do wskazanego pliku pracy
              / QUIT :: QUIT po przetworzeniu wiersza poleceń (aby zobaczyć parametry). 
              / NOSD :: NIE Źródło katalog jest określony.
              / NODD :: NIE katalog docelowy jest określony.
                / IF :: Dołącz następujące pliki.


Oto praktyczne przykłady zastosowania Robocopy.exe:
Najprostsza możliwa operacja, czyli kopiowanie zawartości katalogu C:\Folder1 do C:\Folder2 pomijając puste katalogi:
robocopy.exe C:\Folder1 C:\Folder2
Kopiowanie zawartości katalogu C:\Folder1 do C:\Folder2 wraz z pustymi katalogami:
robocopy.exe C:\Folder1 C:\Folder2 /E
Wyświetlenie plików większych niż 1MB (1024 bajty):
robocopy.exe c:\Folder1 d:\folder_docelowy /min:1024 /l
Należy zaznaczyć, że folder docelowy jest obowiązkowy, lecz żadne pliki nie zostaną przekopiowane. Odpowiada za to parametr /l. Wynik polecenia będzie podobny do tego:
Wyświetlenie plików MNIEJSZYCH niż 1MB (1024 bajty)
robocopy.exe c:\Folder1 d:\folder_docelowy /max:1024 /l
Zapisanie wyniku do loga:
robocopy.exe c:\Folder1 d:\folder_docelowy /LOG:c:\log.txt
Przeniesienie plików starszych niż 7 dni (oprócz plików będących w użyciu)
robocopy.exe c:\Folder1 d:\folder_docelowy /move /minage:7
W tym miejscu podam kilka podobnych opcji
/maxage: pliki NIE-starsze niż N dni
/minage: pliki NIE-młodsze niż N dni
/maxlad: pliki nie używane krócej niż N dni
/minlad: pliki nie używanie dłużej niż N dni
Jeżeli N przekracza liczbę 1900 należy podać datę w formacie RRRRMMDD

Mirror, czyli synchronizowanie katalogów

To polecenie zsynchronizuje dwa katalogi – skopiuje pliki i katalogi (również puste) do katalogu docelowego, a także skasuje z katalogu docelowego pliki i katalogi, których już nie ma w katalogu źródłowym.
robocopy.exe \\server1\udział \\server2\udział /MIR
…lub to samo dla dysków X(źródłowy) i Y (docelowy):
robocopy.exe X:\DIR Y:\DIR /MIR

Zaawansowane synchronizowanie udziałów sieciowych:

robocopy.exe \\server1\udział \\server2\udział /MIR /FFT /Z /XA:H /W:2
/FFT używa datowania system FAT zamiast NTFS.
/Z pozwala wznowić zadanie zamiast rozpoczynać je od nowa (na przykład w przypadku starty połączenia sieciowego)
/XA:H ignoruje ukryte pliki
/W:2 zmniejsza czas ponownej próby z domyślnych 30 sekund na 2.

Kopiowanie różnicowe, czyli backup z użyciem robocopy.exe

To polecenie skopiuje nam tylko pliki i katalogi zmodyfikowane w ciągu 1 dnia:
robocopy.exe „c:\folder1″ „c:\backup-%date% ” /MAXAGE:1
Upewnijcie się tylko, czy Wasz format daty zawiera dozwolone znaki. U mnie na przykład jest to RRRR-MM-DD.

Przenoszenie uprawnień, atrybutów, lub dat z użyciem Robocopy.exe

Oto przykład kopujacy uprawnienia (ACL)
robocopy.exe c:\folder1 c:\folder2 /Copy:S /IS /IT
D dane
 atrybuty
T czasy
S uprawnienia NTFS
O właściciele
U informacje audytowe
Jak pewnie zauważyliście, domyślne kopiowanie (robocopy.exe C:\Folder1 C:\Folder2
) zawiera w sobie ukryte: /Copy:DAT
/IS – od „Include same files”, czyli takie, które już istnieja w katalogu docelowym, mają ten sam rozmiar, czas i atrybut.
/IT – od “Include tweaked files”, czyli takie które już istnieją w katalogu docelowym, mają ten sam rozmiar i czas, ale inny atrybut.
Wspomniana we wstępie wielowątkowość domyślnie wynosi 8. Możemy zwiększyć ten parametr np. do 24:
robocopy.exe C:\Folder1 C:\Folder2 /MT:24
Kopiowanie katalogów wraz z czasem (timestamp) głównego katalogu:
robocopy.exe C:\Folder1 C:\Folder2 /MIR /dcopy:T

Limit zużycia łącza

Parametr /IPG:750 ograniczy zużycie łącza do około 1Mbps, co sprawi, że transfer danych nie spowoduje problemów sieciowych :)
robocopy.exe /ipg:750 \\serwer1\udział \\server2\udział
Myślę, że powyższe przykłady z grubsza prezentują niesamowita wszechstronność narzędzia robocopy.exe. Jeśli szukacie narzędzia, które pozwala kasować pliki po dacie modyfikacji, zachęcam do zapoznania się z FORFILES.
Jeśli macie jakieś pytania lub komentarze, piszcie śmiało :)