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

BATCH - Zeilen- und Spaltenweise einlesen und ausgeben

Frage Entwicklung Batch & Shell

Mitglied: mydom23

mydom23 (Level 1) - Jetzt verbinden

10.11.2009, aktualisiert 18.10.2012, 4384 Aufrufe, 3 Kommentare

Hi,

ich habe ein kleines Problem. Ich brauche ein Script dass mir zwei Dateien zusammenführt und den Inhalt der Dateien bearbeitet. Ziel ist es die zwei Dateien für einen Import vorzubereiten. Die zwei Dateien sehen wiefolgt aus:

Datei1:
01.01.2009;09:00;17,89;4;1;1
01.01.2009;09:12;21,13;4;1;1
01.01.2009;09:15;44,99;3;1;1

Datei2:
01.01.2009;09:15;44,99;3;2;1
01.01.2009;09:21;29,84;6;2;1

Aus diesen zwei Dateien soll eine Datei gemacht werden. Dabei muss jeweils der 5. Token einer Zeile angepasst werden. Als Ausgabe soll dann folgendes bei rauskommen:

01.01.2009;09:00;17,89;4;1;1
01.01.2009;09:12;21,13;4;1;1
01.01.2009;09:15;44,99;3;1;1
01.01.2009;09:15;44,99;3;1;1
01.01.2009;09:21;29,84;6;1;1

Folgendes habe ich bereits:
@echo off
COLOR 7
echo
echo Exportdateien zusammenfuerhen
echo
echo Welche Dateien wollen Sie zusammenfuehren?
:readfile1
set /p file1=Datei 1:
IF exist %file1% (
COLOR 7
echo OK
) ELSE (
COLOR C
echo !!!!! Datei %file1% nicht gefunden !!!!!
goto :readfile1
)
:readfile2
set /p file2=Datei 2:
IF exist %file2% (
COLOR 7
echo OK
) ELSE (
COLOR C
echo !!!!! Datei %file2% nicht gefunden !!!!!
goto :readfile2
)
echo Wie soll die erzeugte Datei heissen?
set /p outputname=Dateiname:
for /F "Tokens=5 delims=;" %%i in (%file1%) do set abteilung=%%i
* HIER MUSS DIE DATEI ZEILENWEISE AUSGELESEN WERDEN, DER 5. TOKEN GEÄNDERT WERDEN UND IN EINE DATEI GESCHRIEBEN WERDEN *
pause

Hier werden zunächst die beiden Dateien angegeben, der Name der Ausgabedatei festgelegt und die Referenznummer eingelesen auf welche der 5. Token geändert werden soll. Die Ausgabe in eine Datei ist auch kein Problem. Das bekomme ich mit "echo %var% >> %outputname%" hin. Jedoch weiß ich nicht wie ich es schaffe die Dateien zeilenweise durch zu gehen und jeweils die 5. Spalte zu ändern.

Ich hoffe jemand kann mir da weiter Helfen und nen kleinen Tipp geben. Ich bin im batchen leider nicht so fit.

Danke.
Mitglied: 60730
10.11.2009, aktualisiert 18.10.2012
Servus,

bitte benutze die Fomatierungshilfe und genauer Code Blöcke.

Dann:

COLOR 7
ist kein gültiger Befehl...

dann würde ich auch mal nach einem Beitrag meinerseits nachsehen, der sich suchen und ersetzen nennt.
Dort sind einige "Such & Ersetzen" Threads zu finden.

btw:
01.
copy %file1% + %file2% outputname 
02.
sort outputname /o outputname.txt
so würde ich das weiterführen.
Nur was genau die Zeile machen soll?
for /F "Tokens=5 delims=;" %%i in (%file1%) do set abteilung=%%i
Hab ich ehrlich nicht verstanden..


Gruß
Bitte warten ..
Mitglied: bastla
10.11.2009 um 12:14 Uhr
Hallo mydom23!

Um in Datei2 jeweils als 5. Token den Inhalt von %abteilung% einzutragen, etwa so:
01.
move %file2% %file2%.tmp 
02.
for /f "tokens=1-6 delims=;" %%a in (%file2%.tmp) do >>%file2% echo %%a;%%b;%%c;%%d;%abteilung%;%%f 
03.
del %file2%.tmp
Grüße
bastla
Bitte warten ..
Mitglied: mydom23
10.11.2009 um 12:23 Uhr
Hi,
danke bastla so funktionierts.
Habe nicht gewusst dass man dem %%a einfach ein %%b %%c etc. anhängen kann ohne diese zu definieren.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch ausgabe zeilenweise stat spaltenweise ausgeben (4)

Frage von sugram zum Thema Batch & Shell ...

C und C++
String einlesen in Array und wieder ausgeben von hinten (4)

Frage von Protected zum Thema C und C ...

Batch & Shell
gelöst Bestimmte Zeile einer Textdatei mit Batch auslesen (2)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Batch & Shell
Batch bestimme Zeile einer vorherigen batch einfügen (9)

Frage von Frensche zum Thema Batch & Shell ...

Neue Wissensbeiträge
Humor (lol)

Wohnt jemand in Belgien und kann nicht mehr ruhig ausschlafen?

(3)

Information von LordGurke zum Thema Humor (lol) ...

Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
Gruppenrichtlinie greift nicht zu! (24)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...