Mit Grep KalenderExport von MS Office bearbeiten?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
jensa
Beiträge: 67
Registriert: 19.07.2005 10:52:21
Wohnort: Kassel
Kontaktdaten:

Mit Grep KalenderExport von MS Office bearbeiten?

Beitrag von jensa » 07.03.2007 13:26:46

Ist es möglich einen KalenderExport von MS Office mit grep dahingehend zu bearbeiten, das er mir bestimmte zeilen bei eine Xls-Datei ausliehst und in eine neue DAtei schreibt?

habe es mit

Code: Alles auswählen

grep "Ausdruck" /tmp/datei.xls > /tmp/datei_neu.xls
versucht, jedoch scheint dies nicht zu funktionieren:/
da in der neuen datei stand
Binary file /tmp/kalender.xls matches
kann mir einer helfen?


und wie könnte ich dann diesen befehl in einen winzigen ShellScript stecken, damit man nur den shell script mit parameter <Ausdruck> <Quelldatei> das automatisieren könnte?
Nichts bleibt wie es ist, aber alles kommt wieder. (Herrman Hesse)

fuzzy
Beiträge: 1021
Registriert: 04.10.2003 12:15:52

Beitrag von fuzzy » 08.03.2007 06:12:21

Hallo jensa,

mit "sed" gibt es bei mir jedenfalls erstmal keine Fehlermeldung, wie weit das Ergebnis dann "brauchbar"/"lesbar" ist, kann ich schlecht beurteilen bei meinem Kurztest... :wink:

Code: Alles auswählen

sed '/Ausdruck/!d' /tmp/datei.xls > /tmp/datei_neu.xls
Gruß fuzzy

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 08.03.2007 20:53:23

Nachdem XLS ein Binärformat ist, wird da mit ziemlicher Sicherheit Mist rauskommen.
Was mir auf die Schnelle einfällt sind zwei Dinge: zum einen könntest du, wenn es geht, CSV-Daten benutzen. Das sind Textdaten, die kannst du mit grep, sed und Co schön bearbeiten.
Eine andere Alternative wäre eventuell, Perl zu benutzen, da gibt es einige Module, die mit Excel-Dateien umgehen können und meines Wissens auch unter Linux funktionieren sollten (such mal nach Spreadsheet::SimpleExcel z.B.).

Benutzeravatar
jensa
Beiträge: 67
Registriert: 19.07.2005 10:52:21
Wohnort: Kassel
Kontaktdaten:

Beitrag von jensa » 08.03.2007 21:22:29

nunja also csv wäre mir persönlich sogar auch lieber, aber die datei müsste halt im windows csv format ausgegeben werden, da ich dann das in eine webapplication importen will, die nur windows-csv unterstützt.
von daher wäre es interessant wie es dann ginge nepos, sry bin noch anfänger bei linux und absoluter beginner bei unix-befehlen die net für mich standrard sind.
könntest du mir da hilfestellung geben?
Nichts bleibt wie es ist, aber alles kommt wieder. (Herrman Hesse)

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 08.03.2007 22:31:15

Also, wie hast du denn die Daten vorliegen? CSV ist eigentlich ein Format, das nicht speziell für Windows ist.
Die Lösung mit Perl, da würde ich dich eher an das Perl-Community Board verweisen. Die besagten Perl-Module hab ich selber noch nie benutzt, die sind dort aber recht oft im Gespräch. Allerdings müsstest du dir dann auch ein wenig Grundlagen in Perl-Programmierung aneignen, was aber grundsätzlich nie schaden kann ;)

Also, hast du nun XLS-Dateien oder CSV?

Benutzeravatar
jensa
Beiträge: 67
Registriert: 19.07.2005 10:52:21
Wohnort: Kassel
Kontaktdaten:

Beitrag von jensa » 08.03.2007 22:46:31

ich könnte theoretisch beide Formate nehmen jedoch wäre es mir lieber & denke soweit ich durchgeblickt bin ist es auch besser im csv format die datei zu speichern und das ist dann auch die quelldatei.
problem ist
hab auch schon einmal eine ausgabe hinbekommen, problem war jedoch ds er komischwerweise irgendwo in der mitte einer zeile informationen weggeschnitten hatte und somit beim vergleich mit einem hexeditor kompl. verkehrte datensätze entstanden sind.
und daher kann ich das in die webapplication nicht einspeisen.
wobei kann auch sein das halt mein befehl (siehe oben) dafür nicht geeignet war:/
Nichts bleibt wie es ist, aber alles kommt wieder. (Herrman Hesse)

Benutzeravatar
jensa
Beiträge: 67
Registriert: 19.07.2005 10:52:21
Wohnort: Kassel
Kontaktdaten:

Beitrag von jensa » 09.03.2007 08:23:11

hallo
ich bins nochmal.
habe sed einmal ausprobiert, verursacht den identischen hex-code für das Dokument wie mit grep.
problem ist, ä,ö,ü werden nicht als solches hineingeschrieben sondern als ",," dadurch wird dann leider die formatierung der csv zerstört.:/
wie kann ich das umgehen / beheben.?
Nichts bleibt wie es ist, aber alles kommt wieder. (Herrman Hesse)

Antworten