ubuntuusers.de

Terminal verschwindet ohne auf eine Eingabe zu warten

Status: Gelöst | Ubuntu-Version: Ubuntu 24.04 (Noble Numbat)
Antworten |

Naubaddi

Avatar von Naubaddi

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 806

Hi,

was ich vorhabe ist eine Datei auf einem Skript abzulegen um das Skript mit der Datei abzuarbeiten. Das Problem ist das Terminal verschwindet und läuft im Hintergrund weiter (beende ich dann mit kill Nummer), was muß ich tun damit das Terminal sichtbar bleibt?

das Skript:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
#
avr_Datei=$1				# Die Datei die übergeben wurde
bascom=$HOME"/Dokumente/programmieren/BASCOM/Compiler/bascomp.exe"
#
beenden="q"
#
function skript_beenden {
  eingabe=""
  echo -n "Bitte $beenden drücken für beenden: "
  while [ "$eingabe" != "$beenden" ] ; do
    read -r -t 1 -s -n 1 -p "" eingabe
    echo -n "$eingabe"
  done
  exit
}
#
{{{#!code text
wine "$bascom" "$avr_Datei" auto
#

die Datei die auf dem Skript abgelegt wird:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
' Compiler: Bascom-Demo 2.0.7.5
'
$regfile   = "attiny85.dat"
$crystal   = 8000000
$hwstack   = 40
$swstack   = 40
$framesize = 40
config portb.2 = output							' Software UART
'
open "comb.2: 9600, 8, n, 1" for output as #1				' Software UART öffnen
'
printbin #1 , &H7E ; &HFF ; &H06 ; &H09 ; &H00 ; &H00 ; &H02 ; &HEF	' SD-Karte als Datenquelle
printbin #1 , &H7E ; &HFF ; &H06 ; &H06 ; &H00 ; &H00 ; &H0C ; &HEF	' Lautstärke einstellen
printbin #1 , &H7E ; &HFF ; &H06 ; &H18 ; &H00 ; &H00 ; &H00 ; &HEF	' zufälliges abspielen
'
printbin #1 , &H7E ; &HFF ; &H06 ; dumm ; &H00 ; &H00 ; &H00 ; &HEF	' Musik abspielen
close #1								' Software UART schließen
'
end

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4773

Wohnort: Berlin

Welches Terminal verschwindet? Wie startest Du das? Die Funktion skript_beenden() wird offenbar nicht aufgerufen. Aber so etwas um ein Terminal offen zu halten, sollte man eh nicht machen. Konsolenprogramme startet man in einer Konsole.

Naubaddi

(Themenstarter)
Avatar von Naubaddi

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 806

Hi,

wenn ich eine Mikrocontroller Quelltext-Datei kompilieren möchte nehme ich diese Datei und lege sie auf das Skript "kompilieren.sh" ab welches sie eigentlich mit "$1" übernehmen soll (zum Xten mal: FUNKTIONIERT NICHT BEI UBUNTU 24.04), darum starte ich jetzt das Skript "kompiliern.sh" und ziehe die Datei "Lauflicht KITT.avr" auf das geöffnete Terminel in dem "kompilieren.sh läuft.

Die Funktion skript_beenden() benutze ich damit ich die Ausgabe von "avrdude" lesen kann, um zu sehen ob beim Kompilieren alles geklappt hat.

Grüßle, Naubaddi

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4773

Wohnort: Berlin

@Naubaddi: Da wird wohl der Dateimanager (oder das Terminal) die ' hinzufügen weil ein Leerzeichen im Dateinamen ist. Hast Du unter Xubuntu auch schon mal einen Dateinamen mit Leerzeichen per Drag'n'Drop übermittelt?

Naubaddi

(Themenstarter)
Avatar von Naubaddi

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 806

Hi,

das mit dem ' war ja bei Xubuntu kein Problem, oft habe ich auch Variablen zur Sicherheit auch noch in " eingepackt ("$avr_Datei").

ja Leerzeichen sind oft in Dateinamen, ich weiß auch das Leerzeichen ein Problem sind im Terminal/Skript was mit ' oder " behoben wird.

Das mit Drag'n'Drop war bei Xubuntu auch viel flexibler, damit die Skripte Icons hatten wurde eine Verknüpfung zum Skript erstellt und es konnten weitere Parameter in der Verknüpfung hinterlegt werden z.B. wurde das Xterm mit Höhen und Breiten Angaben geöffnet um einen Zeilenumbruch und scrollen zu verhinder.

Grüßle, Naubaddi

Dakuan

Avatar von Dakuan

Anmeldungsdatum:
2. November 2004

Beiträge: 6572

Wohnort: Hamburg

Das mit Drag'n'Drop war bei Xubuntu auch viel flexibler, ...

Das halte ich für ein Gerücht. Bei DnD wird eigentlich nur der URL codierte absolute Pfad zu der betroffenen Datei übertragen. Da kann Xubuntu nicht viel verkehrt machen.

Z.B aus:

Some Swingin' Fingerpickin' Ragtime Guitar!-7Lu9EfIyatQ.mp4

wird dann:

file:///home/manfred/test/Some%20Swingin'%20Fingerpickin'%20Ragtime%20Guitar!-7Lu9EfIyatQ.mp4

Das geht auch, wenn der Dateiname Smilies enthält. Problematisch wird das nur, wenn da irgendwelche Netzwerkgeschichten bei sind, die der "Empfänger" nicht versteht.

Edit: es sollte eigentlich dieser Link sein.

Gastmarant

Anmeldungsdatum:
24. September 2025

Beiträge: 150

Ich habe immer noch das Problem das Ganze nicht wirklich nachvollziehen zu können, das machen die mitterweile 3 oder 4 Threads zu dem Thema nicht besser. (Auch was die Übergabe betrifft.)

@Naubaddi

Das Problem ist das Terminal verschwindet und läuft im Hintergrund weiter

Das war zu Anfang, wo kam da das Terminal überhaupt her?, kann doch nur durch Dateimanager, Auswahl "öffnen mit Terminal" gewesen sein. Oder?

Also, wenn Terminal schon auf war, wieso sollte das verschwinden, doch nur weil darin alles abgearbeitet war. Jetzt die Frage: Wieso hast Du nicht einfach zu Ende des Scriptes/Anweisungen ein "read" gesetzt um das Terminal stehen zu lassen? Vllt. bin ich auch neben der ..

Ruth-Wies

Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 913

Wohnort: im Exil ;(

Naubaddi schrieb:

was ich vorhabe ist eine Datei auf einem Skript abzulegen …

Naubaddi schrieb:

Das mit Drag'n'Drop war bei Xubuntu auch viel flexibler, …

In dieser stark verdichteten Beschreibung liegt m. E. der Hase im Pfeffer. Du hast mit dem Dateimanager zwei Verzeichnisse offen, das eine mit dem Skript und das andere mit der Datei, die du auf das Skript ziehst. Erwartet wird, dass der Dateimanager den Dateinamen (samt Pfad) richtig übermittelt. Dabei soll das Terminal offen bleiben, damit die korrekte Ausführung ersichtlich ist. Richtig?

Dazu auch aus einem der anderen Themen:

eine Datei auf ein Skript ablegen funktioniert jetzt mit Thunar, …

Naubaddi

(Themenstarter)
Avatar von Naubaddi

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 806

Hi,

ja das war das Problem, welches hier:

https://forum.ubuntuusers.de/post/9491184/

mit:

1
2
3
4
5
6
7
8
#!/bin/bash

funkt() {
#hier Alles rein
}
#
export -f funkt
gnome-terminal -- bash -c "funkt;read x"

gelöst wurde.

Grüßle, Naubaddi

Antworten |