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

Wert aus einer Steuerdatei per Batch zuweisen

Frage Entwicklung Batch & Shell

Mitglied: Erik72

Erik72 (Level 1) - Jetzt verbinden

13.11.2008, aktualisiert 18.11.2008, 4430 Aufrufe, 5 Kommentare

In einem Verzeichnis werden eine oder mehrere Dateien erstellt (Schokolade.txt, Messer.txt, ....).
Zu jedem Dateinamen gehört ein Datensatz in einer Steuerdatei gepflegt, welche inhaltlich so aussieht:

Schokolade.txt bitter
Messer.txt scharf
Auto.txt schnell
Pflanze.txt grün

Nach Skriptaufruf soll eine Bildschirmausgabe in Form der Eigenschaft aus der zweiten Spalte erfolgen.
Wenn z.B. nur die Datei "Auto.txt" erstellt wurde, soll nur "schnell" ausgegeben werden. Bei zwei oder mehreren Dateien natürlich die weiteren zugehörigen Eigenschaften untereinander. Nach Ausgabe sollen die Dateien gelöscht werden.
Ist es möglich über DOS-Batch diese Aufgabe zu realisieren und hat jemand Lösungsansätze?
Danke im voraus
Gruß
Erik
Mitglied: bastla
13.11.2008 um 15:14 Uhr
Hallo Erik72 und willkommen im Forum!

Soferne die Dateinamen keine Leerzeichen enthalten, sollte das (ungetestet) etwa so gehen:
01.
@echo off & setlocal 
02.
for %%i in ("D:\Der Ordner mit den Dateien\*.txt") do for /f "tokens=2" %%a in ('findstr /i /c:"%%~nxi" "D:\Steuerdatei.txt"') do ( 
03.
    echo %%a 
04.
    echo del "%%i" 2>nul 
05.
06.
echo\ 
07.
pause
Das Löschen der Dateien wird (zum Testen) durch das "echo" in Zeile 4 nur angezeigt - wenn tatsächlich gelöscht werden soll, das "echo" entfernen.

Grüße
bastla

[Edit] `ergänzt [/Edit]
Bitte warten ..
Mitglied: Erik72
13.11.2008 um 15:32 Uhr
Hallo bastla,
deine Lösung ist 1A! Ein herzliches Danke.

Es fehlt nur ein ' aber das findet man schnell...

Gruß
Erik
Bitte warten ..
Mitglied: bastla
13.11.2008 um 16:25 Uhr
Hallo Erik72!

Es fehlt nur ein ' aber das findet man schnell...
Das Motto ist zwar "Sparen, wo's geht", aber man kann's auch übertreiben ...

Zum Glück hatte ich aber noch eines übrig - ist jetzt oben eingebaut.

Grüße
bastla
Bitte warten ..
Mitglied: Erik72
18.11.2008 um 13:59 Uhr
Hallo,
es ist zwar gelöst, will unter einer Bedingung aber nicht richtig.
Wenn in der Steuerdatei die Zuordnung identisch beginnt, dann bekomme ich zwei mal die Ausgabe der zweiten Spalte.

Beispiel Steuerdatei:

rot wert1
gruen wert2
gruenblau wert3
blau wert4

Bei Erstellung der Datei gruen werden zwei Werte ausgegeben, namlich wert1 und wert2.

Kann man das irgendwie unterbinden, dass bei Erstellung der Datei gruen der wert3 nicht zugewiesen wird? Schliesslich braucht wert3 die Datei gruenblau!

Vielen Dank schon mal vorab.
Gruß
Erik
Bitte warten ..
Mitglied: bastla
18.11.2008 um 14:36 Uhr
Hallo Erik72!

Nimm dazu auch das auf den Suchbegriff folgende Trennzeichen (=Leerzeichen) in die Suche auf - Zeile 2 sähe dann so aus:
for %%i in ("D:\Der Ordner mit den Dateien\*.txt") do for /f "tokens=2" %%a in ('findstr /i /c:"%%~nxi " "D:\Steuerdatei.txt"') do (
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Wert aus Batch Schleife in Variable speichern (5)

Frage von anmelder zum Thema Batch & Shell ...

Batch & Shell
gelöst Wert aus batch in externe txt-Datei oder Zwischenablage? (5)

Frage von Yannxck1 zum Thema Batch & Shell ...

Windows Server
gelöst GPO einem Benutzer zuweisen (6)

Frage von Raucherbein zum Thema Windows Server ...

Debian
gelöst Bereitgestellter Speicher einer Boot-Partition zuweisen !? (5)

Frage von N4m3n7os3r zum Thema Debian ...

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