Hallo, eigentlich gehört es hier nicht hin, aber ich will nicht extra ins Forum für Inkscape. Ich bekomme einige Dateien von Corel Draw nicht geöffnet. Das aufgerufene Skript hat zusätzliche Daten an Inkscape übergeben. Es wurde keine Fehlermeldung vom Skript zurückgegeben, doch das Resultat ist möglicherweise unbrauchbar. /usr/share/inkscape/extensions/cdr2svg.sh: line 9: /tmp/tmp.pueaLeOjK9.svg: Datei oder Verzeichnis nicht gefunden. Unter den zu öffnen Dateien ist Corel DRAW aufgeführt. Corel DRAW 7-X4 files (*.cdr) Das Programm Inkscape (Vektor-Grafik) öffnet nur Corel Draw 7.0 aber die Grafiken sind in Corel 9.0 Weiß einer Rat Gruß Stefan -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Donnerstag 18 Juni 2009 glaubte Stefan Plenert zu wissen:
Ich bekomme einige Dateien von Corel Draw nicht geöffnet.
Das aufgerufene Skript hat zusätzliche Daten an Inkscape übergeben. Es wurde keine Fehlermeldung vom Skript zurückgegeben, doch das Resultat ist möglicherweise unbrauchbar.
/usr/share/inkscape/extensions/cdr2svg.sh: line 9: /tmp/tmp.pueaLeOjK9.svg: Datei oder Verzeichnis nicht gefunden.
Steht IMO klar da: In Zeile 9 des Scriptes soll ein Zugriff auf die Datei /tmp/tmp.pueaLeOjK9.svg stattfinden. Und die wird nicht gefunden. Warum da unbedingt eine temporäre Datei aufgerufen/geladen werden soll ist mir schleierhaft. Wenn die Datei wichtig ist, hat sie in /tmp nix verloren. Dem Dateinamen nach sollte sie eigentlich nicht wichtig sein. Abhilfe: - wenn die Datei wichtig ist: in /home/$USER neu anlegen und das Script anpassen - wenn die Datei eigentlich unwichtig ist: Aufruf im Script verhindern flo -- Ähmmm - geht das auch in allgemein verständlichem Deutsch oder müssen wir erst einen VHS-Kurs bei Dir belegen, um das zu verstehen [...]? [Ellen Fink in dspm] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Freitag, 19. Juni 2009 00:28:40 schrieb Florian Gross:
Am Donnerstag 18 Juni 2009 glaubte Stefan Plenert zu wissen:
Ich bekomme einige Dateien von Corel Draw nicht geöffnet.
Das aufgerufene Skript hat zusätzliche Daten an Inkscape übergeben. Es wurde keine Fehlermeldung vom Skript zurückgegeben, doch das Resultat ist möglicherweise unbrauchbar.
/usr/share/inkscape/extensions/cdr2svg.sh: line 9: /tmp/tmp.pueaLeOjK9.svg: Datei oder Verzeichnis nicht gefunden.
Steht IMO klar da: In Zeile 9 des Scriptes soll ein Zugriff auf die Datei /tmp/tmp.pueaLeOjK9.svg stattfinden. Und die wird nicht gefunden.
Warum da unbedingt eine temporäre Datei aufgerufen/geladen werden soll ist mir schleierhaft. Wenn die Datei wichtig ist, hat sie in /tmp nix verloren. Dem Dateinamen nach sollte sie eigentlich nicht wichtig sein.
Abhilfe:
- wenn die Datei wichtig ist: in /home/$USER neu anlegen und das Script anpassen - wenn die Datei eigentlich unwichtig ist: Aufruf im Script verhindern
flo --
Hallo Florian. Beim öffnen wird wohl die Datei zwischengespeichert, bis die Veränderungen fest gespeichert werden. Daher wird die Datei auch jedes mal unter einen anderen Namen gespeichert. tmp.iJrfunq6vJ.svg tmp.sDpZeq1BVg.svg Ich habe 2 mal die selbe Datei geöffnet. - Das Script #! /bin/sh rc=0 TMPDIR="${TMPDIR-/tmp}" TEMPFILENAME=`mktemp 2>/dev/null || echo "$TMPDIR/$$"` TEMPFILENAME=${TEMPFILENAME}.svg uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 cat < "${TEMPFILENAME}" || rc=1 rm -f "${TEMPFILENAME}" exit $rc linux-dg6x:/home/stefan # cd / linux-dg6x:/ # find / -type f -name tmp.*.svg -print find: "/home/stefan/.gvfs": Keine Berechtigung Schönes Wochenende. Stefan -------------------------------- Die Sonnenuhr zählt nur heiteren Stunden, macht es genauso -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Freitag 19 Juni 2009 glaubte Stefan Plenert zu wissen:
Am Freitag, 19. Juni 2009 00:28:40 schrieb Florian Gross:
Am Donnerstag 18 Juni 2009 glaubte Stefan Plenert zu wissen:
/usr/share/inkscape/extensions/cdr2svg.sh: line 9: /tmp/tmp.pueaLeOjK9.svg: Datei oder Verzeichnis nicht gefunden.
Steht IMO klar da: In Zeile 9 des Scriptes soll ein Zugriff auf die Datei /tmp/tmp.pueaLeOjK9.svg stattfinden. Und die wird nicht gefunden.
Warum da unbedingt eine temporäre Datei aufgerufen/geladen werden soll ist mir schleierhaft. Wenn die Datei wichtig ist, hat sie in /tmp nix verloren. Dem Dateinamen nach sollte sie eigentlich nicht wichtig sein.
Beim öffnen wird wohl die Datei zwischengespeichert, bis die Veränderungen fest gespeichert werden.
Sowas ist Sinn einer temporären Datei. Dann macht auch die Ablage in /tmp sinn.
Daher wird die Datei auch jedes mal unter einen anderen Namen gespeichert.
Klar. Ich frage mich gerade, wann bzw. von welchem Programm die Datei erzeugt wird. Und ob die Datei nicht schon wieder gelöscht wird, bis dein Script zum Einsatz kommt. Hm, Sieht nach deinem Script aus.
tmp.iJrfunq6vJ.svg tmp.sDpZeq1BVg.svg
Ich habe 2 mal die selbe Datei geöffnet.
Da sollte auch jedesmal ein anderer Dateiname rauskommen.
- Das Script
Ok, meine Kenntnisse über Scripte sind überschaubar. ;-) Ich stell jetzt mal mehr oder weniger blöde Fragen zu deinem Script. Entweder kommst du selbst dahinter, was da schiefläuft oder jemand mit Ahnung greift ein. *mit dem Zaunpfahl wink* Und ich lerne hoffentlich was dabei.
#! /bin/sh
Das ist klar. ;-)
rc=0
Sagt mir gar nichts. Was bewirkt das?
TMPDIR="${TMPDIR-/tmp}"
Die Variable TMPDIR wird auf /tmp gesetzt, falls nicht schon vorhanden. OK.
TEMPFILENAME=`mktemp 2>/dev/null || echo "$TMPDIR/$$"`
TEMPFILENAME wird gesetzt. Deren Inhalt wird so erzeugt: Entweder wird eine temporäre Datei erzeugt und eventuelle Fehlerausgaben gehen nach /dev/null ODER es wird $TMPDIR ausgelesen und die Prozessnummer des Scriptes wird als Dateiname angehängt. Soweit richtig?
TEMPFILENAME=${TEMPFILENAME}.svg
Jetzt wird an den Inhalt von TEMPFILENAME noch .svg hinzugefügt. So wie es aussieht, wird bei dir die temporäre Datei erzeugt und .svg hinzugefügt. Das ist aus den von dir genannten Dateien | tmp.iJrfunq6vJ.svg | tmp.sDpZeq1BVg.svg ersichtlich.
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1
Hm, ist der Aufruf uniconv richtig?
cat < "${TEMPFILENAME}" || rc=1
In dieser Zeile findet er die Datei nicht. Schickst du deine vorher erzeugte Datei nach /dev/null? Irgendwie bekomme ich den Eindruck. Den den letzten zwei Zeilen kommt das Script gar nicht mehr. Und mein Eindruck, daß du deine temporäre Datei ins Nirvana schickst, verstärkt sich mit den folgenden drei Zeilen:
linux-dg6x:/home/stefan # cd / linux-dg6x:/ # find / -type f -name tmp.*.svg -print find: "/home/stefan/.gvfs": Keine Berechtigung
Und bevor ein falscher Eindruck von meinen Kenntnissen entsteht: Um das Script halbwegs zu verstehen, habe ich http://www.selflinux.org/selflinux/html/shellprogrammierung03.html und http://de.wikibooks.org/wiki/Linux-Kompendium:_Shellprogrammierung bemüht. flo -- Leider lernen diese Grünschnäbel nie etwas aus dem Schicksal ihrer vorangegangenen "Kollegen" und so wundern sie sich immer wieder aufs Neue, wenn sie danach plötzlich die Radieschen von unten betrachten. [Sepp Neuper in dag°] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Freitag, 19. Juni 2009 20:16:36 schrieb Florian Gross:
Am Freitag 19 Juni 2009 glaubte Stefan Plenert zu wissen:
Am Freitag, 19. Juni 2009 00:28:40 schrieb Florian Gross:
Am Donnerstag 18 Juni 2009 glaubte Stefan Plenert zu wissen:
/usr/share/inkscape/extensions/cdr2svg.sh: line 9: /tmp/tmp.pueaLeOjK9.svg: Datei oder Verzeichnis nicht gefunden.
Steht IMO klar da: In Zeile 9 des Scriptes soll ein Zugriff auf die Datei /tmp/tmp.pueaLeOjK9.svg stattfinden. Und die wird nicht gefunden.
Warum da unbedingt eine temporäre Datei aufgerufen/geladen werden soll ist mir schleierhaft. Wenn die Datei wichtig ist, hat sie in /tmp nix verloren. Dem Dateinamen nach sollte sie eigentlich nicht wichtig sein.
Beim öffnen wird wohl die Datei zwischengespeichert, bis die Veränderungen fest gespeichert werden.
Sowas ist Sinn einer temporären Datei. Dann macht auch die Ablage in /tmp sinn.
Daher wird die Datei auch jedes mal unter einen anderen Namen gespeichert.
Klar.
Ich frage mich gerade, wann bzw. von welchem Programm die Datei erzeugt wird. Und ob die Datei nicht schon wieder gelöscht wird, bis dein Script zum Einsatz kommt. Hm, Sieht nach deinem Script aus.
tmp.iJrfunq6vJ.svg tmp.sDpZeq1BVg.svg
tmp.Variable.svg
Ich habe 2 mal die selbe Datei geöffnet.
Da sollte auch jedesmal ein anderer Dateiname rauskommen.
- Das Script
Ok, meine Kenntnisse über Scripte sind überschaubar. ;-)
Meine nicht, ich habe das Script nicht geschrieben.
Ich stell jetzt mal mehr oder weniger blöde Fragen zu deinem Script. Entweder kommst du selbst dahinter, was da schiefläuft oder jemand mit Ahnung greift ein. *mit dem Zaunpfahl wink* Und ich lerne hoffentlich was dabei.
#! /bin/sh
Das ist klar. ;-)
rc=0
Sagt mir gar nichts. Was bewirkt das?
TMPDIR="${TMPDIR-/tmp}"
Die Variable TMPDIR wird auf /tmp gesetzt, falls nicht schon vorhanden. OK.
TEMPFILENAME=`mktemp 2>/dev/null || echo "$TMPDIR/$$"`
TEMPFILENAME wird gesetzt. Deren Inhalt wird so erzeugt:
Entweder wird eine temporäre Datei erzeugt und eventuelle Fehlerausgaben gehen nach /dev/null ODER es wird $TMPDIR ausgelesen und die Prozessnummer des Scriptes wird als Dateiname angehängt.
Soweit richtig?
TEMPFILENAME=${TEMPFILENAME}.svg
Jetzt wird an den Inhalt von TEMPFILENAME noch .svg hinzugefügt.
So wie es aussieht, wird bei dir die temporäre Datei erzeugt und .svg hinzugefügt. Das ist aus den von dir genannten Dateien
In tmp habe ich folgendes gefunden: Variable, tmp.Variable und Variable.xxx (Endung der Anwendung, z.B. Variable.sla von Scribus) Einige Anwendungen, wie Audacity, legen in tmp eigene Ordner an. Aber ich habe keine Datei tmp.Variable.xxx gefunden.
| tmp.iJrfunq6vJ.svg | tmp.sDpZeq1BVg.svg
ersichtlich.
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1
Hm, ist der Aufruf uniconv richtig?
cat < "${TEMPFILENAME}" || rc=1
In dieser Zeile findet er die Datei nicht. Schickst du deine vorher erzeugte Datei nach /dev/null? Irgendwie bekomme ich den Eindruck.
Den den letzten zwei Zeilen kommt das Script gar nicht mehr.
Und mein Eindruck, daß du deine temporäre Datei ins Nirvana
schickst, verstärkt sich mit den folgenden drei Zeilen:
linux-dg6x:/home/stefan # cd / linux-dg6x:/ # find / -type f -name tmp.*.svg -print find: "/home/stefan/.gvfs": Keine Berechtigung
Gebe ein bischen zu, war nicht gerade Intelligent. Suchte über die Shell aber hatte kein Erfolg. Weiß nicht warum der mir sagte: keine Berechtigung, obwohl ich in root war.
Und bevor ein falscher Eindruck von meinen Kenntnissen entsteht: Um das Script halbwegs zu verstehen, habe ich http://www.selflinux.org/selflinux/html/shellprogrammierung03.html und http://de.wikibooks.org/wiki/Linux-Kompendium:_Shellprogrammierung bemüht.
flo --
-- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Freitag 19 Juni 2009 glaubte Florian Gross zu wissen:
Am Freitag 19 Juni 2009 glaubte Stefan Plenert zu wissen:
- Das Script
TEMPFILENAME=${TEMPFILENAME}.svg
Jetzt wird an den Inhalt von TEMPFILENAME noch .svg hinzugefügt.
So wie es aussieht, wird bei dir die temporäre Datei erzeugt und .svg hinzugefügt. Das ist aus den von dir genannten Dateien | tmp.iJrfunq6vJ.svg | tmp.sDpZeq1BVg.svg ersichtlich.
ARGH! Ich Trottel seh das jetzt erst. Da wird nur eine Variable der Form /tmp/tmp.ZUFALLSWERT.svg erzeugt. Das paßt ja. Dummerweise heißt die Datei weiterhin nur /tmp/tmp.ZUFALLSWERT, da das Script den Dateinamen nicht anpaßt. ********************************************************************* * ACHTUNG! ich weise noch mal drauf hin, daß ich von Scripten * * nicht viel verstehe! Keine Haftung bei eventuellen Datenverlusten!* * Im Zweifel vorher andere versierte Mitschreiberlinge hier fragen. * ********************************************************************* Das Script sollte etwa so aussehen: #! /bin/sh rc=0 TMPDIR="${TMPDIR-/tmp}" TEMPFILENAME=`mktemp 2>/dev/null || echo "$TMPDIR/$$"` mv "${TEMPFILENAME}" "${TEMPFILENAME}".svg TEMPFILENAME=${TEMPFILENAME}.svg uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 cat < "${TEMPFILENAME}" || rc=1 rm -f "${TEMPFILENAME}" exit $rc Aber laß da lieber vorher mal David oder so drüberschauen, nicht daß du auf einmal tausende Dateien mit der Endung .svg hast... flo --
Ich fand die 288 GB RAM neulich auch sehr recovery... Java 1.4 kann nun endlich mehr als 4 GB in einem Prozeß adressieren, womit man endlich 288 GB bereits für einzigen Nutzer verbrauchen kann. [Florian Weimer in dasr] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Fre, 19 Jun 2009, Stefan Plenert schrieb: [..]
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 ^^^^^^^^^^^^^^^^ Ändere das mal in:
uniconv "$1" "${TEMPFILENAME}" || rc=1
cat < "${TEMPFILENAME}" || rc=1
Denn hier scheint die Datei schon weg zu sein. -dnh -- Shh! Be vewy quiet, I'm hunting wuntime errors! -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Freitag 19 Juni 2009 glaubte David Haller zu wissen:
Hallo,
Am Fre, 19 Jun 2009, Stefan Plenert schrieb: [..]
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 ^^^^^^^^^^^^^^^^ Ändere das mal in:
uniconv "$1" "${TEMPFILENAME}" || rc=1
cat < "${TEMPFILENAME}" || rc=1
Denn hier scheint die Datei schon weg zu sein.
Siehe meine andere mail. TEMPFILENAME und der Name der Datei auf der Festplatte stimmen schon vorher nicht mehr überein. flo -- So viel Mühe, für eine so kleine signatur. Das grenzt ja schon an Arbeit. [WoKo in dag°] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Fre, 19 Jun 2009, Florian Gross schrieb:
Am Freitag 19 Juni 2009 glaubte David Haller zu wissen:
Hallo,
Am Fre, 19 Jun 2009, Stefan Plenert schrieb: [..]
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 ^^^^^^^^^^^^^^^^ Ändere das mal in:
uniconv "$1" "${TEMPFILENAME}" || rc=1
cat < "${TEMPFILENAME}" || rc=1
Denn hier scheint die Datei schon weg zu sein.
Siehe meine andere mail. TEMPFILENAME und der Name der Datei auf der Festplatte stimmen schon vorher nicht mehr überein.
Das ist egal, verwendet wird die .svg Version, allerdings hinterläßt mktemp eine Datei. Man könnte jetzt 'mktemp' mit '-u' aufrufen, aber das ist auch schlecht. Aber v.a. ist der uniconv Aufruf falsch, deswegen wird die .svg auch nicht erstellt. Da die Ausgabe vom cat aber eh nach stdout geschrieben wird kann man das Tempfile komplett weglassen. Es reicht also: uniconv -in "$1" Wenn man das in einer Datei braucht: ==== #!/bin/sh TMPDIR="${TMPDIR-/tmp}" test -r "$1" || { echo "cannot read input file: $1"; exit 1; } TEMPFILE=$(mktemp "${TMPDIR}/cdr2svg.XXXXXX") || exit 1; uniconv -decode iso-8859-1 -in "$1" -out "${TEMPFILE}" >/dev/null || rc=1 # [..] rm -f "${TEMPFILENAME}" ==== Aber was das ganze soll ist mir sowieso schleierhaft, denn ohne Angabe von Optionen macht uniconv nämlich gar nix. Stefan: was soll das Script überhaupt machen? -dnh -- In the Beginning there was nothing, which exploded. -- Terry Pratchett, Lords and Ladies -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Samstag 20 Juni 2009 glaubte David Haller zu wissen:
Am Fre, 19 Jun 2009, Florian Gross schrieb:
Am Freitag 19 Juni 2009 glaubte David Haller zu wissen:
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 ^^^^^^^^^^^^^^^^ Ändere das mal in:
uniconv "$1" "${TEMPFILENAME}" || rc=1
cat < "${TEMPFILENAME}" || rc=1
Denn hier scheint die Datei schon weg zu sein.
Siehe meine andere mail. TEMPFILENAME und der Name der Datei auf der Festplatte stimmen schon vorher nicht mehr überein.
Das ist egal, verwendet wird die .svg Version, allerdings hinterläßt mktemp eine Datei.
Sehe ich das flasch oder wird da eine Datei angelegt, mit der dann _gar_ nichts mehr gemacht wird?
Man könnte jetzt 'mktemp' mit '-u' aufrufen, aber das ist auch schlecht. Aber v.a. ist der uniconv Aufruf falsch, deswegen wird die .svg auch nicht erstellt.
Da die Ausgabe vom cat aber eh nach stdout geschrieben wird kann man das Tempfile komplett weglassen.
Ok, wohl schon die Antwort auf meine Frage.
uniconv -decode iso-8859-1 -in "$1" -out "${TEMPFILE}" >/dev/null || rc=1 ------------------------^^^^ Was bedeuted das rc= ? Steht das für return code?
flo -- Hallo Und Guten Tag Kenn Ich Nicht? Weiss Ich Nicht? [WoKo in drscr] Muss man da Nen Vampir spielen,oder ist das so was wie Dark Omen ? -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Sam, 20 Jun 2009, Florian Gross schrieb:
Am Samstag 20 Juni 2009 glaubte David Haller zu wissen:
Am Fre, 19 Jun 2009, Florian Gross schrieb:
Am Freitag 19 Juni 2009 glaubte David Haller zu wissen:
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1 ^^^^^^^^^^^^^^^^ Ändere das mal in:
uniconv "$1" "${TEMPFILENAME}" || rc=1
cat < "${TEMPFILENAME}" || rc=1
Denn hier scheint die Datei schon weg zu sein.
Siehe meine andere mail. TEMPFILENAME und der Name der Datei auf der Festplatte stimmen schon vorher nicht mehr überein.
Das ist egal, verwendet wird die .svg Version, allerdings hinterläßt mktemp eine Datei.
Sehe ich das flasch oder wird da eine Datei angelegt, mit der dann _gar_ nichts mehr gemacht wird?
Korrekt. V.a. wird sie auch nicht entsorgt.
Man könnte jetzt 'mktemp' mit '-u' aufrufen, aber das ist auch schlecht. Aber v.a. ist der uniconv Aufruf falsch, deswegen wird die .svg auch nicht erstellt.
Da die Ausgabe vom cat aber eh nach stdout geschrieben wird kann man das Tempfile komplett weglassen.
Ok, wohl schon die Antwort auf meine Frage.
uniconv -decode iso-8859-1 -in "$1" -out "${TEMPFILE}" >/dev/null || rc=1 Was bedeuted das rc= ? Steht das für return code?
Das ist eine Variable, die man wohl ursprünglich mal dazu verwenden wollte, am Ende des Scripts einen "ReturnCode" per 'exit' zurückzugeben. Vergleiche die Verwendung der Variablen 'return' in /etc/init.d/skeleton. Was man dann aber vergessen hat. Wie auch immer, das Script ist einfach nur gruselig. -dnh -- Q: What do you call it when you really *do* get different results every time you do the same thing? A: Windows -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Samstag, 20. Juni 2009 00:18:53 schrieb David Haller:
Hallo,
Am Fre, 19 Jun 2009, Florian Gross schrieb:
Am Freitag 19 Juni 2009 glaubte David Haller zu wissen:
Hallo,
Am Fre, 19 Jun 2009, Stefan Plenert schrieb: [..]
uniconv "$1" "${TEMPFILENAME}" > /dev/null 2>&1 || rc=1
^^^^^^^^^^^^^^^^ Ändere das mal in:
uniconv "$1" "${TEMPFILENAME}" || rc=1
cat < "${TEMPFILENAME}" || rc=1
Denn hier scheint die Datei schon weg zu sein.
Siehe meine andere mail. TEMPFILENAME und der Name der Datei auf der Festplatte stimmen schon vorher nicht mehr überein.
Das ist egal, verwendet wird die .svg Version, allerdings hinterläßt mktemp eine Datei. Man könnte jetzt 'mktemp' mit '-u' aufrufen, aber das ist auch schlecht. Aber v.a. ist der uniconv Aufruf falsch, deswegen wird die .svg auch nicht erstellt.
Da die Ausgabe vom cat aber eh nach stdout geschrieben wird kann man das Tempfile komplett weglassen.
Es reicht also:
uniconv -in "$1"
Wenn man das in einer Datei braucht:
==== #!/bin/sh TMPDIR="${TMPDIR-/tmp}" test -r "$1" || { echo "cannot read input file: $1"; exit 1; } TEMPFILE=$(mktemp "${TMPDIR}/cdr2svg.XXXXXX") || exit 1; uniconv -decode iso-8859-1 -in "$1" -out "${TEMPFILE}" >/dev/null || rc=1 # [..] rm -f "${TEMPFILENAME}" ====
Aber was das ganze soll ist mir sowieso schleierhaft, denn ohne Angabe von Optionen macht uniconv nämlich gar nix.
Stefan: was soll das Script überhaupt machen?
Inkscape ist ein Programm zur Vektorgrafik. Es kann auch Grafiken von Corel Draw öffnen. Beim öffnen kam die Meldung: Das aufgerufene Skript hat zusätzliche Daten an Inkscape übergeben. Es wurde keine Fehlermeldung vom Skript zurückgegeben, doch das Resultat ist möglicherweise unbrauchbar. /usr/share/inkscape/extensions/cdr2svg.sh: line 9: /tmp/tmp.pueaLeOjK9.svg: Datei oder Verzeichnis nicht gefunden. ========== Unter den zu öffnen Dateien ist Corel DRAW aufgeführt. Corel DRAW 7-X4 files (*.cdr) Das Programm Inkscape öffnet anscheinend nur Corel Draw 7.0 aber die Grafiken sind in Corel 9.0. Muß mal eins ausprobieren, wie das bei meinen alten PC (OS 10.3 / 32 Bit) ist. Gruß Stefan -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Sam, 20 Jun 2009, Stefan Plenert schrieb:
Am Samstag, 20. Juni 2009 00:18:53 schrieb David Haller: [..]
Stefan: was soll das Script überhaupt machen?
Inkscape ist ein Programm zur Vektorgrafik. Es kann auch Grafiken von Corel Draw öffnen.
Das hattest du schon alles geschrieben. Ich hab jetzt deine Arbeit gemacht. cdr2svg.sh ist das Import-Script von inkscape selber, was aber kaputt ist, denn uniconv ist das falsche Programm. Korrekt wäre 'uniconvertor' statt uniconv im Script. Allerdings finde ich uniconvertor in keinem SuSE Repository. Homepage: http://sk1project.org/modules.php?name=Products&product=uniconvertor Äh, jetzt doch (allerdings noch nicht per webpin). Guck mal in http://download.opensuse.org/repositories/home:/dnh/ Das cdr2svg.sh mußt du dann aber noch selber anpassen (uniconv durch uniconvertor ersetzen). HTH, -dnh -- I'm going to a meeting...? I'd bore myself to death -- if I weren't already dead. -- Georgia 'George' L. Lass, Dead Like Me -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Sonntag, 21. Juni 2009 05:28:06 schrieb David Haller:
Hallo,
Am Sam, 20 Jun 2009, Stefan Plenert schrieb:
Am Samstag, 20. Juni 2009 00:18:53 schrieb David Haller:
[..]
Stefan: was soll das Script überhaupt machen?
Inkscape ist ein Programm zur Vektorgrafik. Es kann auch Grafiken von Corel Draw öffnen.
Das hattest du schon alles geschrieben.
Ich hab jetzt deine Arbeit gemacht. cdr2svg.sh ist das Import-Script von inkscape selber, was aber kaputt ist, denn uniconv ist das falsche Programm. Korrekt wäre 'uniconvertor' statt uniconv im Script.
Allerdings finde ich uniconvertor in keinem SuSE Repository. Homepage: http://sk1project.org/modules.php?name=Products&product=uniconvertor
Äh, jetzt doch (allerdings noch nicht per webpin). Guck mal in http://download.opensuse.org/repositories/home:/dnh/
Ja habe hier 3 mal python-uniconvertor Index of /repositories/home:/dnh/openSUSE_11.1/x86_64 Name Last modified Size Parent Directory - uniconvertor-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 712K uniconvertor-debuginfo-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 98K uniconvertor-debugsource-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 64K python habe ich in der Tabelle habe ich aus der Zeilenlänge weggelassen. Wer die Wahl hat, hat die Qual. Als Neuling muss ich ehrlich gestehen, der Begriff Debug ist schon mehrmals aufgetaucht, hier habe ich noch debuginfo und debugsource. Find leider nichts in magnum Linux von Mark+Technik.
Das cdr2svg.sh mußt du dann aber noch selber anpassen (uniconv durch uniconvertor ersetzen).
Danke schöner Tag noch Gruß Stefan -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Son, 21 Jun 2009, Stefan Plenert schrieb:
Am Sonntag, 21. Juni 2009 05:28:06 schrieb David Haller:
Äh, jetzt doch (allerdings noch nicht per webpin). Guck mal in http://download.opensuse.org/repositories/home:/dnh/
Ja habe hier 3 mal python-uniconvertor
Index of /repositories/home:/dnh/openSUSE_11.1/x86_64 Name Last modified Size Parent Directory -
uniconvertor-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 712K uniconvertor-debuginfo-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 98K uniconvertor-debugsource-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 64K
Äh, verwendest du denn überhaupt die x86_64 SUSE? Wenn ja: http://download.opensuse.org/repositories/home:/dnh/openSUSE_11.1/x86_64/pyt... sonst http://download.opensuse.org/repositories/home:/dnh/openSUSE_11.1/i586/pytho... oder füge einfach das Repo hinzu: als root: zypper ar http://download.opensuse.org/repositories/home:/dnh/openSUSE_11.1/home:dnh.r... Dann kümmern sich auch Yast/zypper um die Architektur und evtl. weitere noch fehlende Abhängigkeiten. Wenn du nicht die openSUSE 11.1 hast, mußt du noch ein bissl warten, dann sollten auch die Pakete für die 11.0 u.a. auftauchen. Bei der 11.0 brauchst du auch noch ein anderes Paket, das bekommst du aber auch über das Repo (oder per Hand heruntergeladen, z.Z. ist da nicht viel Auswahl ;). Achso: ich kämpfe noch ziemlich mit der Bedienung des Buildservice, kann also immer mal wieder hakeln, bei der 11.1 scheint's aber geklappt zu haben.
Als Neuling muss ich ehrlich gestehen, der Begriff Debug ist schon mehrmals aufgetaucht, hier habe ich noch debuginfo und debugsource. Find leider nichts in magnum Linux von Mark+Technik.
http://de.wikipedia.org/wiki/Debugger Kurz: die -debug* Pakete brauchst du als nicht-Programmierer generell nicht. -dnh -- That's O'Neill with two L's, the other one has no sense of humor. -- Col. Jack O'Neill, Stargate -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Sonntag, 21. Juni 2009 11:11:24 schrieb David Haller:
Hallo,
-
uniconvertor-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 712K uniconvertor-debuginfo-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 98K uniconvertor-debugsource-1.1.4-8.2.x86_64.rpm 21.06.09 10:09 64K
Äh, verwendest du denn überhaupt die x86_64 SUSE? Wenn ja:
http://download.opensuse.org/repositories/home:/dnh/openSUSE_11.1/x86_64/py thon-uniconvertor-1.1.4-8.2.x86_64.rpm
sonst
http://download.opensuse.org/repositories/home:/dnh/openSUSE_11.1/i586/pyth on-uniconvertor-1.1.4-8.2.i586.rpm
oder füge einfach das Repo hinzu: als root:
zypper ar http://download.opensuse.org/repositories/home:/dnh/openSUSE_11.1/home:dnh. repo
Dann kümmern sich auch Yast/zypper um die Architektur und evtl. weitere noch fehlende Abhängigkeiten.
Wenn du nicht die openSUSE 11.1 hast, mußt du noch ein bissl warten, dann sollten auch die Pakete für die 11.0 u.a. auftauchen. Bei der 11.0 brauchst du auch noch ein anderes Paket, das bekommst du aber auch über das Repo (oder per Hand heruntergeladen, z.Z. ist da nicht viel Auswahl ;).
Achso: ich kämpfe noch ziemlich mit der Bedienung des Buildservice, kann also immer mal wieder hakeln, bei der 11.1 scheint's aber geklappt zu haben.
Als Neuling muss ich ehrlich gestehen, der Begriff Debug ist schon mehrmals aufgetaucht, hier habe ich noch debuginfo und debugsource. Find leider nichts in magnum Linux von Mark+Technik.
http://de.wikipedia.org/wiki/Debugger
Kurz: die -debug* Pakete brauchst du als nicht-Programmierer generell nicht.
-dnh
Vielen Dank an alle, Die Fehlermeldung ist raus, die Datei läßt sich leider immer noch nicht öffnen. Muß ich noch ein bischen warten. Windows Meta File *.wmf wird von Gimp (Pixel-Bild) geöffnet, obwohl es auch eine Datei mit Zirkel und Lineal ist wie Draw oder Adobe Illustrator. Schönen Sontag noch Gruß Stefan -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (4)
-
David Haller
-
Florian Gross
-
Stefan Plenert
-
Stefan Plenert