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

Batch: Alle Zeilen aus txt abarbeiten

Frage Entwicklung Batch & Shell

Mitglied: copro

copro (Level 1) - Jetzt verbinden

23.08.2005, aktualisiert 24.08.2005, 16557 Aufrufe, 3 Kommentare

Alle Zeilen aus txt abarbeiten

Hallo zusammen

Ich habe folgendes Problem:

Ich habe mir ein Script geschrieben das beim Herunterfahren meinen Desktop säubert.

Da ich nicht jede Endung in einen eigenen Ordner schmeissen will und zudem z.B. ein Zip Datei auch ein Treiber, Bilder usw. sein kann, werden nur bestimmte Endungen wie .exe in tools verschoben oder .psd in design usw. der "Rest" kommt in den Ordner Misc.

Nun stehe ich vor dem Problem, dass wenn ein Ordner vorhanden ist, der leer erstellt wird in jedem Ordner obwoh er da nix zu suchen hat.

Kein Problem dachte ich mir, verschieben wir alle Ordner zuerst bevor dann die Abfrage mit den Endungen beginnt.

Das habe ich wie folgt versucht:
<font class="code">
DIR /B /AD "%userprofile%\desktop\" > c:\list.txt
For /F %%a IN (c:\list.txt) DO xcopy /E /Y "%userprofile%\desktop\%%a" "e:\desktop\%date%\Misc\"
For /F %%a IN (c:\list.txt) DO rd /S /Q "%userprofile%\desktop\%%a"
</font>
Beim ersten Ordner klappt das ganz gut. Beim zweiten wird nur der Inhalt kopiert und der Dritte ignoriert... Woran kann das liegen?
Oder gibt es eine andere möglichkeit dies abzufangen, schliesslich wäre es ja schön wenn ein Ordner mit MP3's im Ordner Sound liegt und nicht in Misc.

Ja ich habe beim xcopy befehl die parameter /E /S aktiviert, doch die benötige ich, falls ein cms oder so auf dem Desktop liegt. Da kann es schon sein das ein Ordner leer ist aber dennoch benötigt wird und sollte nicht einfach so ignoriert werden...

Hoffe man versteht was ich meine =)
Danke im Voraus für die Hilfe
MFG
Mitglied: copro
24.08.2005 um 01:03 Uhr
Ok ich weiss jetzt wo das Problem ist...
Die Leerzeichen aus der list.txt!

For /F %%g IN (C:\LIST:TXT) DO xcopy /S /E /Y "%userprofile%\desktop\%%g" "e:\desktop\%date%\Misc\"

Dieses List.txt müsste quasi in Anführungszeichen stehen.
Mit usebackq hats nicht geklappt weiss jemand wie ich das bewerkstellige?
Bitte warten ..
Mitglied: Biber
24.08.2005 um 09:10 Uhr
For /F %%g IN (C:\LIST.TXT) DO xcopy /S /E /Y "%userprofile%\desktop\%%g" "e:\desktop\%date%\Misc\"

Dieses List.txt müsste quasi in Anführungszeichen stehen.

Eine der vielen Möglichkeiten wäre mit "Delims=", eine andere mit "Tokens=*" (s. "FOR /?"):
For /F "delims=" %%g IN (C:\LIST.TXT) DO xcopy /S /E /Y "%userprofile%\desktop\%%g" "e:\desktop\%date%\Misc\"

HTH Frank / der Biber aus Bremen
Bitte warten ..
Mitglied: copro
24.08.2005 um 15:15 Uhr
Jopp genau hattes es gestern Nacht noch heraus gefunden...
So geht das ganze wunderbar.

DIR /B /AD "%userprofile%\desktop\" > c:\list.txt
For /F "tokens=*" %%g IN (c:\list.txt) DO xcopy /S /E /Y "%userprofile%\desktop\%%g" "e:\desktop\%date%\Misc\%%g"
For /F "tokens=*" %%g IN (c:\list.txt) DO rd /S /Q "%userprofile%\desktop\%%g"

THX trozdem ;)
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Per Batch eine XLS-Datei in eine TXT-Datei umwandeln (5)

Frage von skiing69 zum Thema Batch & Shell ...

Batch & Shell
gelöst Vorhandene TXT per Batch aktualisieren (6)

Frage von kampen zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Viren und Trojaner
Ransomware .nm4 (14)

Frage von Zyklo92 zum Thema Viren und Trojaner ...

Microsoft Office
+1.000 Ordner in Outlook: Wie besser? (11)

Frage von Matsushita zum Thema Microsoft Office ...

Zusammenarbeit
Administrator Verhalten nach Vertragskündigung (10)

Frage von sysbone zum Thema Zusammenarbeit ...