Skopiuj wiele plików ignorując błędy


14

Próbuję skopiować pliki z uszkodzonego dysku twardego. Nie wszystkie z nich zostaną skopiowane - niektóre mają błędy CRC i przestają działać. Chciałbym pominąć te pliki i kontynuować resztę kopii - ale proces kopiowania zatrzymuje się, dopóki nie kliknę jednej z opcji w oknie błędu. Czy istnieje sposób, aby skopiować wszystko, powiedzieć systemowi operacyjnemu, aby pomijał ten monit i po prostu nie kopiował uszkodzonych plików?

To jest na Windows 7.

Odpowiedzi:


15

Najszybszym sposobem byłoby prawdopodobnie użycie xcopy poprzez instancję wiersza polecenia w kontekście podobnym do:

xcopy $SOURCE $DESTINATION /C /E /Q 

Flaga / C zmusza xcopy do ignorowania problemów z kopiowaniem; flaga / E nakazuje xcopy kopiowanie folderów (nawet pustych), a flaga / Q sprawia, że ​​jest to cicha operacja (w przeciwnym razie otrzymasz wpis dla każdej skopiowanej rzeczy).

Przykładem może być:

xcopy d:\*.* c:\recovery /C /E /Q

dlaczego nie cp??
Vineet Menon,

2
@VineetMenon Zakładając, że masz na myśli polecenie kopiowania, to dlatego, że nie ma ono natury „kontynuuj pomimo błędów”, o którą pytający pyta. Jeśli chodzi ci o komendę Linux cp, to dlatego, że pytanie dotyczy Windows 7.
Rilgon Arcsinh

ooh ... miałem na myśli, cpjak w systemie Windows, nie wiedziałem o możliwości ignorowania błędów bez błędów !! :( thx
Vineet Menon,


3

Może jakiś prosty fragment PowerShell?

copy-item -path E:\myfolders -destination C:\newfolder -container -force -recurse -erroraction continue -warningaction continue -confirm:$false

Aby uruchomić, otwórz konsolę PowerShell (dostępną w każdym systemie Windows od XP), zmień parametry -path i -directory do folderu początkowego i docelowego, skopiuj polecenie do okna PS i naciśnij klawisz Enter. Jeśli nie możesz skopiować, włącz tryb szybkiej edycji we właściwościach konsoli - ta opcja wklejania map pod prawym przyciskiem myszy w Win7.

Może wymagać zamykania ścieżek w cudzysłowie '', jeśli w nazwach występują specjalne znaki, takie jak białe znaki.

To uruchomienie w Powershell powinno skopiować wszystkie pliki i podkatalogi do określonego katalogu. Kopiowanie będzie kontynuowane pomimo błędu określonego pliku. Za każdy uszkodzony plik, którego polecenie nie może skopiować, otrzymasz wiele czerwonych danych wyjściowych w konsoli. Jeśli nie chcesz ich widzieć, zmień opcję erroraction na Silentlycontinue.


2

W przeszłości korzystałem z TeraCopy . Inną opcją byłaby kopia na poziomie bloku - na przykład za pomocą narzędzia dd lub narzędzia do klonowania dysku. Osobiście uruchomiłbym system z płyty CD z systemem Linux na żywo i używałbym dd_rescue / ddrescue, jeśli dane są ważne.



1

Natknąłem się na „Unstoppable Copier” Roadkila. Ma jako interfejs graficzny i został zaprojektowany specjalnie do tych przypadków.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.