schober007
Goto Top

Bestimmte Dateien mit Robocopy verschieben

Guten Tag,
ich bin neu hier, und benötige etwas Hilfe.
Auch nach langem Suche bin ich nicht fündig geworden.

ich habe die Aufgabe von einem File-Server alle Mediadateien zu löschen.
"WAV, MP3, AVI, MPEG, ............"

Ich habe eine Liste mit den Extentions der Dateien die betroffen sind.

Um mir die Arbeit zu erleichtern will ich diese Dateien in ein für den Anwender nicht sichtbaren Bereich verschieben.
Damit ich bei Bedarf nicht jedesmal eine Rücksicherung machen muss.

Nun habe ich mit Robocopy eine Zeile geschrieben, die das tut.

robocopy G:Daten K:Sicherung *.avi /MOVE /S

Nun zu meinem Problem:

1. Leider werden dabei auch leere Verzeichnisse gelöscht, was nicht sein soll.
2. Wie lese ich eine Liste mit den Extentions ein, damit ich das Script nicht mehrfach starten muss.

Vielleicht hat ja jemand eine Tip für mich.

Danke und frohe Ostern wünscht

Schober007

Content-Key: 56105

Url: https://administrator.de/contentid/56105

Printed on: April 23, 2024 at 14:04 o'clock

Member: miniversum
miniversum Apr 08, 2007 at 11:16:25 (UTC)
Goto Top
zu 2.)

Schreibe deine Extensions untereinander in eine Datei und speichere sie als Ext.txt

WAV
MP3
AVI
MPEG

Dann geht es so:

FOR /F %%A in ('type Ext.txt') do robocopy G:Daten K:Sicherung *.%%A /MOVE /S

miniversum
Member: Schober007
Schober007 Apr 08, 2007 at 11:28:40 (UTC)
Goto Top
Danke für die schnelle Antwort.

Ich glaube ich bin zu #### .

Ich habe die Datei ext.txt erstellt und diese in das Verzeichnis System32 eingefügt.

Danach habe ich das Script gestartet.
FOR /F %%A in (Ext.txt) do robocopy "G:\Daten" "K:\Sicherung" *.%%A /MOVE /S

Das Script läuft durch, aber führt nichts aus. D. h. es sind keine Verzeichnisse und auch keine Dateien in Ziel vorhanden.

Führe ich dies Script aus,
robocopy "G:\Daten" "K:\Sicherung" *.doc /MOVE /S
Funktioniert es aber mit den beschriebenen Problemen.

Was mache ich den falsch, den der Ablauf ist doch der gleiche.
Member: Schober007
Schober007 Apr 08, 2007 at 12:16:11 (UTC)
Goto Top
Ein ganz grosses SORRY.

ich habe in der Datei die Extentions mit ".mp3" eingetragen.

In Script wird ach ein Punkt gesetzt. Damit lautet es dann ". . mp3" was natürlich nicht gefunden werden kann.

SORRY nochmal.
Member: bastla
bastla Apr 08, 2007 at 12:25:59 (UTC)
Goto Top
Hallo Schober007!

Die "Ext.txt" muss natürlich auch gefunden werden - deshalb hat miniversum Dir auch nicht den Rat gegeben, sie in einem anderen Verzeichnis als die Batch-Datei selbst zu speichern - aber wenn Du gesteigerten Wert darauf legen solltest, versuch es so:
FOR /F %%A in (%windir%\system32\Ext.txt) do robocopy "G:\Daten" "K:\Sicherung" *.%%A /MOV /S  
Informationen zum Schalter "/MOV" (ohne "E") findest Du in der Robocopy-Hilfe.

Grüße
bastla
Member: Biber
Biber Apr 08, 2007 at 17:30:03 (UTC)
Goto Top
...und um unnötige Komplexität in Zukunft zu vermeiden, reduziere das Ganze auf
::----snipp SaveMyMediaGeraffel.bat
@FOR %%i in (wav mp3 avi mpeg) do @robocopy "G:\Daten" "K:\Sicherung" *.%%i /MOV /S  
::----snapp SaveMyMediaGeraffel.bat
[Die beiden "@" sind nur zum Anzeige-Unterdrücken der auszuführenden Anweisungen.]

Gruss
Biber
Member: Schober007
Schober007 Apr 08, 2007 at 19:44:44 (UTC)
Goto Top
Hallo Liebe Helfer,

Danke für Eure Hilfe.

Den Fehler mit der Ext.txt habe ich behoben.
Ich habe das Script mit Vista als Admin getestet.
Dann wird ein anderer Startpfad verwendet.

Das mit MOV habe ich in der Hilfe überlesen.

Nun sieht es so aus:
FOR /F %%A in (Ext.txt) do robocopy "G:\Daten" "K:\Sicherung" *%%A /MOV /S /COPYALL

Nochmal Danke und schöne Ostern