Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Keine Kopie von Dateien, die einen Unterstrich in der Dateierweiterung haben.

Frage Entwicklung Batch & Shell

Mitglied: joe65

joe65 (Level 1) - Jetzt verbinden

15.08.2013 um 17:44 Uhr, 1857 Aufrufe, 8 Kommentare, 1 Danke

Hallo,

ich möchte über ein Batch Script Dateien kopieren.
Dateien, die eine bestimmte Erweiterung haben (z.B. *.zip) möchte ich nicht kopieren.
Diese Dateierweiterungen habe ich in der Datei "nocopy.txt" angegeben.
Das ganze funktioniert auch.

01.
xcopy "%Quelle1%\*.*" "%Ziel1%" /s /y /i /d /r /exclude:nocopy.txt
Mein Problem:
Ich möchte auch Dateien, die einen Unterstrich [_] in der Erweiterung haben nicht kopieren.
z.B.:
*.xls_
*.txt_20130814
*.docx_old
also immer wenn nach der eigentlichen Dateierweiterung noch ein Unterstrich folgt.
Dabei ist völlig egal was nach dem Unterstrich folgt, d.h. es kann auch nichts mehr folgen.
Letzlich sollen alle Dateien nicht kopiert werden, in deren Erweiterung ein Unterstrich vorkommt.
Wie muss hierzu der Eintrag in "nocopy.txt" lauten?
Mitglied: Endoro
15.08.2013, aktualisiert um 21:45 Uhr
Hallo, du kannst mal das versuchen:
01.
dir /b "%Quelle1%\*.*_*">nocopy2.txt 
02.
xcopy "%Quelle1%\*" "%Ziel1%" /syidr /exclude:nocopy.txt+nocopy2.txt
lg.
Bitte warten ..
Mitglied: bastla
15.08.2013 um 22:56 Uhr
@ Endoro
Damit die Liste komplett (es sollen ja auch Unterordner kopiert werden), aber nicht zu umfangreich wird, vielleicht besser
for /f "delims=" %%i in ('dir /s/b/a-d "%Quelle1%\*.*_*"') do >>nocopy2.txt echo %%~xi
Alternative: Kopieren und danach
del /s /q "%Ziel1%\*.*_*"
- könnte aber bei schreibgeschützten / versteckten / System-Dateien etwas mehr Aufwand erfordern ...

Grüße
bastla
Bitte warten ..
Mitglied: Endoro
15.08.2013 um 23:31 Uhr
@bastla
Super Idee mit den Extensions. (steht auch in der Hilfe, man müsste die nur mal lesen )
lg.
Bitte warten ..
Mitglied: colinardo
16.08.2013, aktualisiert um 11:07 Uhr
Hi @bastla und @Endoro,
das Problem mit eurem Filter *.*_* ist, das wenn im Dateinamen Punkte und Unterstriche vorkommen diese Dateien auch nicht mitkopiert werden.
Beispiel:
Quartal.Q3_10.xls

man müsste die Liste für die Schleife mit Findstr ausfiltern:
ungetestet etwa so:
'dir /s/b/a-d "%Quelle1%\*.*" ^| Findstr /r /v ".*\.[^^\._]*$"'
Grüße Uwe
Bitte warten ..
Mitglied: bastla
16.08.2013, aktualisiert um 08:59 Uhr
@ colinardo
Schon klar - und wenn schon "findstr", dann noch ein zweites, um Dubletten in der "nocopy2.txt" zu vermeiden und diese kürzer zu halten, also etwa
... do findstr /ix "%%~xi" nocopy2.txt>nul || >>"nocopy2.txt" echo %%~xi
Grüße
bastla
Bitte warten ..
Mitglied: Endoro
16.08.2013, aktualisiert um 16:32 Uhr
Hallo,
01.
(FOR /f "delims=" %%a IN ('dir /b /s "%Quelle1%\*.*_*"') DO FOR /f "delims=_" %%b IN ("%%~xa") DO IF "%%~xa" neq "%%~xb" ECHO %%~xa)>nocopy2.txt 
02.
xcopy "%Quelle1%\*" "%Ziel1%" /syidr /exclude:nocopy.txt+nocopy2.txt
lg.

PS: @bastla danke schön €.
Bitte warten ..
Mitglied: bastla
16.08.2013 um 11:18 Uhr
@ Endoro
Auch schön - wobei ich immer noch zumindest ein "/s" für "dir" verwenden würde ...

Grüße
bastla
Bitte warten ..
Mitglied: joe65
20.08.2013 um 19:57 Uhr
Hallo,

Danke für eure Hilfe. An den Fall mit Punkt und Unterstrich im Dateinamen hatte ich gar nicht gedacht.
Ist aber gut zu wissen wie sowas zu lösen ist.

Viele Grüße Joe65
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Dateien trotz Verwendung kopieren (2)

Frage von 112Timo zum Thema Batch & Shell ...

Windows 10
gelöst Chinesische Zeichen in Dateierweiterung-Selektor-DropDown (5)

Frage von Techos zum Thema Windows 10 ...

Vmware
gelöst Dateien auf eine VM im EXSi kopieren (3)

Frage von Stefan007 zum Thema Vmware ...

Webbrowser
gelöst Datei in Firefox Profilordner kopieren (9)

Frage von DarkScabs zum Thema Webbrowser ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Rechtliche Fragen
gelöst Geschäftsführer Email gefaked (18)

Frage von xbast1x zum Thema Rechtliche Fragen ...

Vmware
VMware ESX - Start einer VM verhindern (16)

Frage von emeriks zum Thema Vmware ...

iOS
IPhone wird ferngesteuert Hacker? (15)

Frage von Akcent zum Thema iOS ...

Vmware
gelöst Update auf ESXI 6.5 Installieren (15)

Frage von zeroblue2005 zum Thema Vmware ...