Guten Tag zusammen
Also, ich hab folgenden Wunsch:
Ich möchte ein Skript haben, das mir ein neues Konsolenfesnter öffnet und dann in diesem Fenster einen Text ausgibt.
Ich bekomm das irgendwie nicht zusammen, obwohl es nicht schwer sein kann.
Guten Tag zusammen
Also, ich hab folgenden Wunsch:
Ich möchte ein Skript haben, das mir ein neues Konsolenfesnter öffnet und dann in diesem Fenster einen Text ausgibt.
Ich bekomm das irgendwie nicht zusammen, obwohl es nicht schwer sein kann.
xterm -bg gray -fg black -title "Offe" -e './test.sh;sleep 100' &
verschwindet nach 100 sec wieder oder
xterm -bg gray -fg black -title "Offe" -e './test.sh;/bin/bash' &
-fg Foreground Farbe
-bg Background Farbe
-title Überschrift über dem Fenster
alles nicht wichtig
Offe
There's more than one way to do it.... daher 'ne Alternative:
Das einfachste, was mir einfällt, ist allerdings xmessage $TEXT.Code:#!/bin/bash TITEL="Testtitel..."; TEXT="Test, eins zwei drei..."; case $1 in -test) echo ${TEXT}; echo "Drücke <Enter> um das Fenster zu schließen."; read; exit 0; ;; esac exec xterm -T ${TITEL} -e "$0 -test"; exit 0;
Reality corrupt. Reboot universe? (Y/N)
Ich glaub, da hab ich mich ein bisschen falsch ausgedrückt:
Ich möchte das irgendwie mit dem Befehl bash machen.
Da gibts ja auch jede Menge optionen, aber ich weiss nicht, welche ich jetzt nehmen soll.
bash ist eine Shell
in bash gibt es einen Befehl xterm der ein neues Fenster öffnet.
wenn du in einer Konsole xterm eingibst, und in einer graphischen Oberfläche bist, wird ein neues Fenster aufgemacht. Was willst du mehr?
Offe
"irgendwie mit dem Befehl bash"
Ich glaub, du weißt noch nicht ganz, was du willst. ;-)
Sag' doch einfach, wozu genau es gut sein soll, sonst kann dir keiner helfen.
Reality corrupt. Reboot universe? (Y/N)
"bash" hat überhaubt nix mit Fenster/Nicht-Fenster zu tun. Das ist ne Shell, die in einem (virtuellen oder auch nicht virtuellen) Terminal läuft.
MfG Peschmä
The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)
Tschuldigung, wenn ich mich ungenau ausgedrückt habe, aber ich versuchs jetzt noch mal:
mit dem befehl konsole oeffnet er ein Konsolen-Fenster. logisch.
Jetzt will ich, das er nicht nur das Fenster offnet, sondern auch noch oben einen Text ausgibt (der dann auch stehen bleibt) , und dann soll man ganz normal an der Konsole arbeiten dürfen.
Konsole ist vergleichbar mit Xterm. Die meisten benutzen wohl letzeres - Konsole ist nur die KDE-Inkarnation davon.
Wie das mit Konsole geht weiss ich nicht genau. Mit -e kannst du einen Befehl ausführen. Der wäre dann hier z.B. die Bash. Wenn die bash beendet wurde dann schliesst auch Konsole.
Nun müsstest du nur noch die Bash dazu bringen, zuerst echo auszuführen und dann einen Prompt anzuzeigen, richtig?
Keine Ahnung wie das geht. Die Varianten die ich versucht habe gingen nicht
MfG Peschmä
The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)
Was spricht gegen:
xterm -title "Offe" -e './test.sh;/bin/bash' &
Offe
Nichts, ausser dass er Konsole möchte. Vielleicht verwendet er ja die Tabs oder so...
Auf jeden Fall finde ich aterm/xterm auch besser.
MfG Peschmä
The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)
wie wärs, wenn du folgendermaßen vorgehst:
1. speichere den Text, den du ausgeben willst, in einer Datei
2. lass das Script ein xterm öffnen, in dem die Datei angezeigt wird
3. lösche die Datei wieder, wenn sie nicht mehr gebraucht wird
z.B.
ls -l > script.ausgabe
xterm -e 'less script.ausgabe'
rm script.ausgabe
Es ploppt ein Fenster (ein xterm) auf, in dem die Ausgabe von ls zu sehen ist. Wird less mit 'q' beendet, so wird das xterm wieder geschlossen. soll man ganz normal an der Konsole arbeiten dürfen, so muss das xterm vom Script unabhängig gemacht werden. Dazu macht man daraus einen Hintergrundprozess:
xterm -e 'less script.ausgabe' &
so läuft das Script weiter und darf auch beendet werden, während das xterm mit der Textanzeige weiterhin steht.
Ich hoffe, ich hatte dich richtig verstanden. Das ist das, was Offe schon meinte. Nur mit viel mehr Worten.
edit: ups, ich hätte nicht zwischedurch frühstücken sollen.
OK, danke fuer die Antworten. Is zwar nicht das was ich mir am Anfang erhofft hatte, aber ich probiers aus.
@error
Hast du dir mein Script oben überhaupt angeguckt?
(statt "xterm" kann auch "konsole" gestartet werden)
Reality corrupt. Reboot universe? (Y/N)
ich habs mal ausprobiert, mit xterm gehts auch.
Aber wenn ich statt xterm jedoch konsole eingebe, sagt er mir:
kbuildsycoca running...
Mutex destroy failure: Device or resource busy
keine Ahnung, was das zu bedeuten hat.
Aber trotzdem danke...muss es halt mit xterm gehen
Lesezeichen