Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Bat-Datei erstellen um damit zahlen aus datein zu kopieren und in eine .txt schreiben

Frage Entwicklung Batch & Shell

Mitglied: husana

husana (Level 1) - Jetzt verbinden

08.09.2010 um 14:46 Uhr, 4337 Aufrufe, 4 Kommentare

Hallo. Ich bin neu hier und kenn mich noch nicht so mit bat-programierung aus. Hoffe das mit hier jemand helfen kann?

Hier meine Frage:
Habe den Ordner "Beispiel". In diesem sind mehrere Unterordner mit Namen AA, AB, AC, AD, AE usw.
In jedem dieser Unterordner ist eine Datei "test.ini" drin. Innerhalb dieser "test.ini" steht in der 10.Zeile "Terminal = 10" (Jeder Unterordner (AA, AB usw.) hat dort eine andere Nr.)

Möchte nun eine Bat-Datei erstellen, die nur diese Nr. ausliest und in ein Textdokument einfügt.

Diese sollte dann so aussehen:

AA - 10
AB - 15
AC - 18
usw.

Danke
husana
Mitglied: bastla
08.09.2010 um 14:55 Uhr
Hallo husana und willkommen im Forum!

Soferne die Zeile 10 die einzige Zeile ist, die mit "Terminal = " beginnt, könnte das (ungetestet) so gehen:
01.
@echo off & setlocal 
02.
set "Ordner=D:\Beispiel" 
03.
set "Liste=D:\Textdokument.txt" 
04.
 
05.
del "%Liste%" 2>nul 
06.
for /d %%i in ("%Ordner%\*.*") do if exist "%%i\test.ini" for /f "tokens=3" %%a in ('findstr /b /c:"Terminal = " "%%i\test.ini"') do >>"%Liste%" echo %%~nxi - %%a
Mit dem ersten "for" werden alle Unterordner (die dann als %%i zur Verfügung stehen) abgegrast, und das zweite "for" zerlegt die gefundene Zeile anhand des Standardtrennzeichens "Leerzeichen" und liefert den 3. Bestandteil ("token") als %%a ...

Infos zu den Befehlen erhältst Du mit "Befehl /?", zB
findstr /?
[Edit] Mit %%~nxi sichergestellt, dass nur der Ordnername in die Liste geschrieben wird. [/Edit]

Grüße
bastla
Bitte warten ..
Mitglied: LotPings
08.09.2010 um 22:04 Uhr
Hallo Bastla,

findstr kann doch auch rekuriv suchen, wäre dies nicht einfacher:
01.
@echo off & setlocal 
02.
set "Ordner=D:\Beispiel" 
03.
set "Liste=D:\Test\Textdokument.txt" 
04.
Pushd %Ordner% 
05.
del "%Liste%" 2>nul 
06.
for /F "tokens=1-4 delims=\:=" %%A in ( 'findstr /S /B /C:"Terminal = " test.ini ' ) Do >>"%Liste%" Echo.%%A -%%D 
07.
PopD
Gruß
LotPings
Bitte warten ..
Mitglied: bastla
08.09.2010 um 22:18 Uhr
Hallo LotPings!

Wenn es keine weiteren Unterordner mit möglichen Fundstellen gibt, sicher der bessere Ansatz ...

Grüße
bastla
Bitte warten ..
Mitglied: husana
09.09.2010 um 10:16 Uhr
Guten Morgen

Habe es heute morgen endlich geschafft, nach dem ich gestern verzweifelt aufgegeben habe!!!

Vielen Dank an meine Helfer ;)

Hier mein fertige Batch:

@echo off & setlocal
set "Ordner=D:\Beispiel"
set "Liste=D:\Test\Textdokument.txt"
pushd %Ordner%
del "%Liste%" 2>nul
for /d %%i in ("%Ordner%\*.*") do if exist "%%i\test.ini" for /f "tokens=3" %%a in ( 'findstr /b /c:"Terminal = " "%%i\test.ini"' ) do >>"%Liste%" echo %%~nxi - %%a
popd

Gruß
husana
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Datei zum Kopieren aktueller Dateien erstellen (5)

Frage von daniel011 zum Thema Batch & Shell ...

Batch & Shell
gelöst Größe einer Datei per BATCH in eine TXT schreiben (5)

Frage von marvinpl zum Thema Batch & Shell ...

Batch & Shell
Kombinationen - Möglichkeiten in txt schreiben lassen! (8)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(14)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Server
Bilder aus dem Web mit CSV runterladen (30)

Frage von Yannosch zum Thema Server ...

Server-Hardware
Bestehendes Raid erweitern um 4 gleiche Platten! (Verständnis Fragen) (12)

Frage von Hendrik2586 zum Thema Server-Hardware ...

Windows Update
WSUS 4 (Server 2012 R2) - Windows 10 Updates nicht möglich (12)

Frage von c0d3.r3d zum Thema Windows Update ...