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, 1076 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 ..
Ähnliche Inhalte
Batch & Shell
gelöst Erstellungsdatum vor jede Zeile einer Textdatei schreiben (5)

Frage von freakonaleash zum Thema Batch & Shell ...

Sicherheits-Tools
gelöst Hash-Wert fest in Audiodatei schreiben (4)

Frage von Hamoe2 zum Thema Sicherheits-Tools ...

Windows Server
Microsoft EventID 4131 in Textdatei (4)

Frage von andre1988 zum Thema Windows Server ...

Microsoft Office
gelöst Excel-Werte eingeben und in neue Tabelle schreiben (9)

Frage von werner1966 zum Thema Microsoft Office ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Windows Update
gelöst MS: Update-Server-Adressen OHNE Wildcards (17)

Frage von mrserious73 zum Thema Windows Update ...

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 ...