Co to jest polecenie wiersza polecenia systemu Windows do kopiowania plików?
Muszę przenieść plik z lokalizacji A do lokalizacji B. Także jeśli folder dla lokalizacji B nie istnieje, chcę go utworzyć.
Potrzebuję tego jako wiersza poleceń, aby móc go zautomatyzować.
Wersja systemu Windows to XP.
windows
command-line-interface
copy
David Basarab
źródło
źródło
robocopy
działa również świetnieOdpowiedzi:
Polecenie
xcopy
jest tym, czego szukasz. Przykład:Powyższe polecenie skopiuje źródło do miejsca docelowego, plików i katalogów (w tym pustych), nie zatrzyma się na błędzie, skopiuje pliki ukryte i systemowe, nadpisze pliki tylko do odczytu, zachowa atrybuty i informacje o własności / ACL oraz usunie monit o zastąpienie istniejących plików docelowych.
Aby uzyskać więcej informacji, wpisz
xcopy /?
swój wiersz poleceń.źródło
/E /H
i być może/K /O
dostaniesz długą drogę za pomocą kilku przydatnych podpowiedzi/J
, co zapobiega usterce XCopy podczas kopiowania dużych plików. Nie jestem pewien, dlaczego nieUżyj md, aby utworzyć folder (jest w porządku, jeśli już istnieje)
Użyj kopiuj lub przenieś dla plików, a xcopy dla folderów
źródło
W pliku wsadowym:
if not exists
sprawdza parametr, aby sprawdzić, czy istnieje, ale działa tylko na plikach. Aby sprawdzić istnienie katalogu , musisz poszukać „pseudopliku” o nazwie „nul” - sprawdzenie istnienia tego pliku zawsze zwróci true, jeśli katalog istnieje.Kopie linia skopiować plik o nazwie
file
w katalogulocationA
dolocationB
i nazwy pliku samo. Jeśli chcesz zmienić nazwę pliku w tym samym czasie, możesz to zrobić również:źródło
Jeśli chcesz zsynchronizować kopię i inne zaawansowane funkcje (zignoruj niektóre foldery, uwzględnij tylko niektóre symbole wieloznaczne), spójrz na
robocopy
. Zawarte w systemie Vista i późniejszych, opcjonalne (z narzędzi zestawu zasobów) we wcześniejszych wersjach.źródło
Użyj ROBOCOPY, jeśli tworzysz skrypty zapasowe. xcopy zostało wycofane i prawdopodobnie zostanie wycofane z użycia w najbliższej przyszłości. robocopy może zrobić wszystko, co potrafi xcopy. Jest również bardziej elastyczny i niezawodny. Tworzenie skryptów za pomocą robocopy zapewni im ochronę na przyszłość.
Użyj robocopy, aby łatwo skopiować foldery. Polecenie robocopy zastępuje polecenie xcopy. Może szybko kopiować całe foldery bez martwienia się o zdefiniowanie zawartości. Na przykład, aby skopiować całą zawartość katalogu C: \ tools do nowego folderu D: \ backup \ tools, wprowadź następujące dane:
Modyfikator / e mówi robocopy, aby zawierał wszystkie podkatalogi. Obejmuje to puste foldery. robocopy automatycznie skopiuje ukryte i systemowe pliki. Stworzy nowe katalogi, jeśli nie istnieją w docelowej lokalizacji.
Utwórz kopię lustrzaną katalogu. Odbicie lustrzane katalogu doskonale nadaje się do tworzenia kopii zapasowych. Opcja kopii lustrzanej robocopy skopiuje całą zawartość ze źródła do miejsca docelowego. Następnie usunie wszystko w miejscu docelowym, które nie istnieje u źródła. Zapewnia to, że kopia zapasowa zawiera tylko najnowsze wersje plików. Na przykład, aby wykonać kopię lustrzaną C: \ Users \ My Documents do D: \ backup \ My Documents, wprowadź następujące dane: [4]
Ta funkcja zachowa wszystkie uprawnienia do oryginalnych plików.
Włącz ponowne uruchamianie. Możesz włączyć możliwość ponownego uruchomienia procesu w przypadku przerwania połączenia w połowie kopii.
Zaloguj się proces kopiowania. robocopy umożliwia utworzenie pliku dziennika. Może to pomóc w określeniu problemów lub wygenerowaniu archiwum tego, co zostało skopiowane.
Modyfikator / log + doda istniejący plik dziennika zamiast nadpisania go. Jeśli wolisz po prostu zastąpić stary plik dziennika, użyj /log:.txt.
źródło
xcopy utworzy dla ciebie strukturę katalogów. Sztuczka polega na użyciu opcji / I i rzuceniu gwiazdką na końcu nazwy pliku, aby xcopy pomyślało, że kopiujesz wiele plików, w przeciwnym razie zapyta Cię, czy nazwa docelowa to żądana nazwa pliku, czy nazwa katalogu, który chcesz . Na przykład.
Chciałbym również spojrzeć na RoboCopy, ale musisz go pobrać z zestawu zasobów, ponieważ nie jest on w systemie Windows aż do Vista.
źródło
Powyższe polecenie tworzy dodatkowy poziom katalogu z nazwą pliku źródłowego. Więc ... xcopy / I srcdir \ dir1 \ dir2 \ file1.txt * destdir \ dir1 \ dir2 \ file1.txt powoduje, że destdir \ dir1 \ dir2 \ file1.txt \ file1.txt
źródło