-e wird nicht gespeichert/ausgegeben
Hallo Liste, ich habe folgendes kleines Problem: Ich habe hier ein Script,welches die Zeichenfolge -e ausgibt. $ cat xxx x="-e" echo "${x}" x=" -e" echo "${x}" $ xxx -e $ Wenn ich nur "-e" abspeichere,wird nichts ausgegeben. Preisfrage: was ist hier los. Mit freundlichen Grüßen Jörg Kositza Thyssen Krupp Stahl AG WBW BO-A Essener Str. 244 44782 Bochum E-Mail: joerg.kositza@tks-cs.thyssenkrupp.com ===================================== Disclaimer: Wie sie wissen, können über das Internet versandte E-Mails unter fremden Namen erstellt oder manipuliert werden. Aus diesem Grund sind unsere mit E-Mail verschickten Nachrichten grundsätzlich keine rechtsverbindlichen Willenserklärungen.
joerg.kositza@tks-cs.thyssenkrupp.com:
ich habe folgendes kleines Problem: Ich habe hier ein Script,welches die Zeichenfolge -e ausgibt. $ cat xxx x="-e" echo "${x}" x=" -e" echo "${x}" $ xxx
-e $
Wenn ich nur "-e" abspeichere,wird nichts ausgegeben. Preisfrage: was ist hier los.
einfach mal set -x an den Anfang der Datei schreiben, dann sieht man was passiert: ----------------- + x=-e + echo -e + x= -e + echo ' -e' -e ----------------- Mit der Zuweisung x=" -e" steht also ein blank vorne :-) damit wird aber echo "${x}" zu echo " -e" und damit ist das Argument " -e" (also mit Blank) kein Kommandozeilenargument mehr für echo (denn die fangen ja mit "-" an und nicht mit " -"). Und nun kann " -e" ausgegeben werden. Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 9204871 Fax: +49(721) 24874 juergen.vollmer@[informatik-vollmer.de|alumni.uni-karlsruhe.de|acm.org] www.informatik-vollmer.de
Hallo joerg.kositza, joerg.kositza@tks-cs.thyssenkrupp.com schrieb:
ich habe folgendes kleines Problem: Ich habe hier ein Script,welches die Zeichenfolge -e ausgibt. $ cat xxx x="-e" echo "${x}" x=" -e" echo "${x}" $ xxx
-e $
Wenn ich nur "-e" abspeichere,wird nichts ausgegeben. Preisfrage: was ist hier los.
-e wird im ersten Fall als Parameter vom Programm echo ausgewertet, im zweiten Fall führen das Leerzeichen und die Anführungszeichen dazu, dass echo die Zeichenfolge nicht als Parameter erkennt und somit ausgibt. Ohne die Quote-Zeichen würde die Shell das Leerzeichen ignorieren und dem echo würde nur -e übergeben werden, was dann wieder als Parameter ausgewertet würde. Gruß christian
Hallo, nun bin ich noch immer dabei mein SuSE 8.0 so einzurichten, dass all das, was ich davon wollte funktionieren soll. Das gestalltet sich schwieriger als gedacht. Nachdem ich gerade das System komplett abgeschossen habe, werde ich die Sachen eben Fragen, weil mich das ganze doch etwas eingeschüchtert hat. Alles natürlich in verschiedenen Threads. Hier also, was ist passiert? Ich will endlich die alten TrueType schriften einbinden. Kopiert habe ich sie schon in ein entsprechendes Verzeichnis. Auch XF86Config ist entsprechend geändert. Also lese ich nach. Finde, dass es ggf. Software zum einbinden gibt und finde freetype2. Lade das runter unt installiere. Anschließend lese ich noch mal im Netzt und finde, dass es sinnvoll ist XF86 Verion 4 installiert zu haben. in meiner XF86Config steht aber nur was mit 3. Also steht in dem Text solle ich SaX2 aufrufen und die Version ändern. Genau das wollte ich tun. Ich tippe also Sax2 und starte und sehe einen vollkommen verqueren Bildschirm, auf dem nichts mehr zu erkennen ist, die Maus flitzt durch die gegend, wird scheinbar von Zeit zu Zeit ausgelöst. Am Ende blieb nur noch ein strg-alt-backspace. Das wiederum zur Folge hatte, dass ich den Rechner manuell erstmal über fsck /dev/sdb4 und /dev/sb5 repaieren musste. Was ist also falsch? So war das bestimmt nicht gedacht! Bea -- +++ GMX - Mail, Messaging & more http://www.gmx.net +++ Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage!
lbea@gmx.net schrieb: ^^^^^^^^^^^^ Hier sollte moeglichst Dein Realname stehen, das waere nett!
nun bin ich noch immer dabei mein SuSE 8.0 so einzurichten, dass all das, was ich davon wollte funktionieren soll. [...] Anschließend lese ich noch mal im Netzt und finde, dass es sinnvoll ist XF86 Verion 4 installiert zu haben. in meiner XF86Config steht aber nur was mit 3. Also steht in dem Text solle ich SaX2 aufrufen und die Version ändern. Genau das wollte ich tun. Ich tippe also Sax2 und starte und sehe einen vollkommen verqueren Bildschirm, auf dem nichts mehr zu erkennen ist, die Maus flitzt durch die gegend, wird scheinbar von Zeit zu Zeit ausgelöst. Am Ende blieb nur noch ein strg-alt-backspace. Das wiederum zur Folge hatte, dass ich den Rechner manuell erstmal über fsck /dev/sdb4 und /dev/sb5 repaieren musste. Was ist also falsch? So war das bestimmt nicht gedacht!
Manche alte Grafikkarten funktionieren nur mit XFree in Version 3, mache neue Karten nur mit XFree in Version 4. Wenn Deine Karte mit Version 4 laeuft, dann deinstalliere per YaST XFree 3 und dafuer installierst Du XFree 4, entweder von CD (da muesste eigentlich eine aeltere Version von XFree 4 drauf sein) oder Du ziehst Dir die entsprechenden Pakete von einem SuSE-Mirror, die sind dann neuer[1]. Ich habe auf einer SuSE 8.0 mal XFree 4.2 installiert gehabt, das ging einwandfrei. Die Konfiguration hat sich zwischen den Versionen 3 und 4 ein wenig geaendert. Eine Konfiguration solltest Du mit sax2 dann hinbekommen - entferne vorher die XF86Config aus dem System (irgendwo sichern). Schau Dir auch mal sax2 --help an, evtl. hilft Dir eine Option weiter. Ohne genauere Angaben, was bei Dir da schief gegangen ist (Installation des neuen XFree, Aufruf von sax2 -> sax.log checken, XFree86.0.log checken, /var/log/messages checken, usw.) wird man kaum mehr sagen koennen. Gruesse, Thomson [1]ftp://ftp.gwdg.de/pub/linux/suse/ftp.suse.com/suse/i386/supplementary/X/XFree86/
Am Fre, 2003-06-13 um 11.09 schrieb joerg.kositza@tks-cs.thyssenkrupp.com:
Hallo Liste,
ich habe folgendes kleines Problem: Ich habe hier ein Script,welches die Zeichenfolge -e ausgibt. $ cat xxx x="-e" echo "${x}" x=" -e" echo "${x}" $ xxx
-e $
Wenn ich nur "-e" abspeichere,wird nichts ausgegeben. Preisfrage: was ist hier los.
Mit freundlichen Grüßen
Jörg Kositza
Wie schon einige richtig bemerkt haben, wird -e zum Parameter für echo. Mein Tipp: printf benutzen x="-e" printf "%s\n" "$x" -e printf hat keinen automatischen Zeilenvorschub, deshalb \n. HTH, Wolfgang
participants (7)
-
Christian Schult
-
joerg.kositza@tks-cs.thyssenkrupp.com
-
Jürgen Vollmer
-
lbea@gmx.net
-
Peter Wiersig
-
Thomas Hertweck
-
Wolfgang Hinsch