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

Dateierweiterungen in eine Textdatei schreiben

Frage Entwicklung Batch & Shell

Mitglied: joe65

joe65 (Level 1) - Jetzt verbinden

28.03.2014, aktualisiert 30.03.2014, 1071 Aufrufe, 3 Kommentare

Hallo,

ich hab nach längerer Zeit wieder mal ein Batch-Problem.
Ich möchte alle Dateierweiterungen (txt, docx, jpg, etc.) die in einem bestimmten Verzeichnis vorkommen in eine Textdatei(=Ergebnisdatei) schreiben.
Die Dateierweiterung soll dabei aber nicht mehr als ein Mal in der Textdatei auftauchen.
Der unten angegebene Code schreibt mir aber die Dateierweiterung mehrfach (so oft sie eben vorkommt) in die Textdatei.
Kann man das so machen, das eine Dateierweiterung nur ein Mal in der Textdatei erscheint?

01.
@echo off 
02.
set "Ergebnisdatei=Dateierweiterungen.txt" 
03.
for /f "delims=" %%i in ('dir "d:\quelle" /s /b /a-d') DO @echo %%~xi >> %Ergebnisdatei% 
04.
pause
Mitglied: Xaero1982
28.03.2014, aktualisiert 30.03.2014
Edit: War viel zu lang ... lösung siehe unten
Bitte warten ..
Mitglied: Endoro
LÖSUNG 28.03.2014, aktualisiert 30.03.2014
Für Batch genügt da ein 2½-Zeiler:
01.
@ECHO OFF &SETLOCAL disableDelayedExpansion 
02.
FOR %%A IN (*) DO IF "%%~XA"=="" (SET /a .+=1) ELSE SET /a %%~XA+=1 2>nul 
03.
(FOR /f "tokens=1*delims==" %%A IN ('SET .') DO ECHO(%%A: %%Bx)>extensions.txt
Gruss Endoro.
Bitte warten ..
Mitglied: joe65
30.03.2014 um 17:56 Uhr
Hallo Endoro,

Super! Genau das habe ich gebraucht!
Trotzdem habe ich aber noch 2 Fragen zu deinem Code:
1) Woher weis deine Variable %%B in der 2. Codezeile die Anzahl?
2) Warum muss in der 3. Codezeile am Anfang ein Klammer-Auf Zeichen stehen? Wenn man das nicht macht, dann steht am Ende noch ein Klammer-Zu Zeichen. Aber mir ist nicht klar warum.

Die Frage werde ich als gelöst schließen.
Danke nochmal!

Grüße
joe65
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Erstellungsdatum vor jede Zeile einer Textdatei schreiben (5)

Frage von freakonaleash zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch-Skript: Messdaten in Textdatei finden und in eine neue Datei schreiben (5)

Frage von habmalnefrage zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: Textdatei Zeilenweise auslesen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Batch & Shell
gelöst Schreiben eines Strings mit Leerzeichen in eine Datei (6)

Frage von c20082005 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Erkennung und -Abwehr
Virenschutz - Meinungen (27)

Frage von honeybee zum Thema Erkennung und -Abwehr ...

Windows 10
Welches OS für Firmengeräte? (18)

Frage von MarkusVH zum Thema Windows 10 ...

Netzwerke
Abisolierwerkzeug (18)

Frage von SarekHL zum Thema Netzwerke ...

Exchange Server
SBS2011: POP3-Connector 10 MB Grenze Email Benachrichtigung (17)

Frage von bogi1102 zum Thema Exchange Server ...