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

Spalten mit Inhalt an csv mit Batchscript anfügen

Frage Entwicklung Batch & Shell

Mitglied: hospiman

hospiman (Level 1) - Jetzt verbinden

10.12.2013, aktualisiert 11:35 Uhr, 1346 Aufrufe, 6 Kommentare, 1 Danke

Hallo an die Profis,

ich habe eine .csv Datei die ich jeden Tag aktualisiert bekomme. Um die in einer Software weiterzuverarbeiten fehlen mir Spalten mit immer dem selben Inhalt.

Bsp.
org Datei

Spalte1;Spalte2;Spalte3
112222;5555555;333333
112223;8888888;555555
112224;9999999;666666

benötigtest Format
Spalte1;Spalte2;Spalte3;neueSpalte
112222;5555555;333333;11
112223;8888888;555555;11
112224;9999999;666666;11
Mitglied: Lochkartenstanzer
10.12.2013, aktualisiert um 10:45 Uhr
Zitat von hospiman:

org Datei
Spalte1;Spalte2;Spalte3
112222;5555555;333333
...

benötigtest Format
Spalte1;Spalte2;Spalte3;neueSpalte
112222;5555555;333333;11
...

Moin

sed -e 's:$:;11:g' datei.csv > neuedatei.csv
sollte es tun.

lks


PS: sed gibt es im cygwin-Paket oder als separates windows-binary zum download, falls es unter windows benötigt wird.
PPS: Falls tatsächlich die Überschrift korrekt umgesetzt werden muß, kann man das auch so schreiben:

sed -e 's:$:;11:g' datei.csv | sed -e 's:Spalte1;Spalte2;Spalte3;11:Spalte1;Spalte2;Spalte3;neueSpalte:g'  > neuedatei.csv
Bitte warten ..
Mitglied: hospiman
10.12.2013 um 11:13 Uhr
Vielen Dank für Deine schnelle Antwort Lochkartenstanzer,

bin da bisl unbeholfen über ein Batchscript ist das nicht möglich oder ? Ich habe cygwin binary herunter geladen leider bekomme ich über cmd das der Befehl nicht verfügbar ist.
Bitte warten ..
Mitglied: Lochkartenstanzer
10.12.2013, aktualisiert um 11:30 Uhr
Zitat von hospiman:

Vielen Dank für Deine schnelle Antwort Lochkartenstanzer,

bin da bisl unbeholfen über ein Batchscript ist das nicht möglich oder ? Ich habe cygwin binary herunter geladen leider
bekomme ich über cmd das der Befehl nicht verfügbar ist.

Du mußt den Pfad mit in die PATH-Variable aufnehmen und beim Installieren drauf achten, daß sed mit installiert wird.

Du kannst natürlich die Zeile in ein bashscript opacken und dann mit bash.exe starten.

Unter normalem Batch machst Du einfach eine Forschleife, die jede Zeile der Datei in eine variable packt und diese dann mit ";11" erweitert und ausgibt

Das kann ich alledings nicht so schnell aus den Fingernschütteln, da gibt es geeignetere Kollegen hier dafür.

lks
Bitte warten ..
Mitglied: hospiman
10.12.2013 um 11:34 Uhr
Ich danke Dir erstmal aber ich denke mit einem Batchscript komm ich für mich weiter, vielleicht meldet sich noch mal jemand
Bitte warten ..
Mitglied: pieh-ejdsch
10.12.2013 um 11:35 Uhr
Moin,

Als Batch in etwa so:
01.
@Echo off 
02.
Setlocal 
03.
Set in=org_Datei 
04.
Set out=out_%in% 
05.
Set Kopf=spalte_neu 
06.
Set wert=11 
07.
>"%out%" (For /f "usebackq delims=" %%i in ("%in%") Do ( 
08.
  If defined Kopf Echo %%i;%kopf% 
09.
  If Not defined Kopf Echo %%i;%wert% 
10.
  Set "Kopf=" 
11.
))
Gruß Phil
Bitte warten ..
Mitglied: hospiman
14.12.2013 um 17:09 Uhr
Vielen Dank pieh-ejdsch ,

das funktioniert prima. Jetzt habe ich jedoch noch ein kleines Problem in der org. Datei stehen Preise mit "." als Dezimaltrenner (Bsp. für 63,20 -> 63.20) und er macht mir 6320.000000 aus dem Wert. Wäre schön wenn du mir vielleicht noch mal helfen könntest.
Bitte warten ..
Ähnliche Inhalte
Windows Server
PowerShell Inhalt einer csv Datei löschen (3)

Frage von makaroni zum Thema Windows Server ...

VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
CNC Maschinen verlieren Netzwerkverbindung (kurioser Fehler) (22)

Frage von NoHopeNoFear zum Thema LAN, WAN, Wireless ...

Webentwicklung
Aktuellen Mitarbeiter auf Homepage anzeigen (13)

Frage von alemanne21 zum Thema Webentwicklung ...

Windows Server
gelöst Parameter Übergabe Terminal Server (9)

Frage von ThomasKern zum Thema Windows Server ...

Server-Hardware
Starker PC zum Virtualisieren (8)

Frage von canlot zum Thema Server-Hardware ...