Script per lanciare, chiudere e rilanciare un programma

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
3637002
Prode Principiante
Messaggi: 54
Iscrizione: mercoledì 30 agosto 2006, 12:29

Script per lanciare, chiudere e rilanciare un programma

Messaggio da 3637002 »

Buonasera,
sto sistemando un cabinet da sala giochi e sono arrivato alla parte software. Ho installa to lubuntu 14.04 su un vecchio portatile e installati gli emulatori.
Arrivato alla parte del front end ho incontrato un bug noioso che sulla community di supporto ufficiale (attract-mode) non hanno risolto. Ecco che chiedo il vostro aiuto per aggirarlo. Il programma al primo avvio si blocca e non rende possibile alcuna operazione. Uscendo, chiudendo il processo e riavviando il programma questo funziona alla perfezione. Vorrei quindi creare uno script che lancia il programma, lo chiude uccidendo processo e finestra e lo riavvia. Non riesco peró a trovare la soluzione, in realtà non riesco a chiudere il programma la prima volta dopo avviato perché sembra che i comandi successivi al lancio non vengano eseguiti. Saluti e grazie mille per l'aiuto. Sono arrivato veramente alla fine del progetto e mi manca soltanto questa parte.
Ultima modifica di 3637002 il martedì 28 febbraio 2017, 7:37, modificato 2 volte in totale.
Avatar utente
tokijin
Moderatore Globale
Moderatore Globale
Messaggi: 4624
Iscrizione: mercoledì 3 giugno 2009, 23:10
Desktop: plasma 5.27.4
Distribuzione: Kubuntu 23.04
Località: Abruzzo

Re: Script per aggirare bug

Messaggio da tokijin »

Ciao, ti chiedo di modificare il titolo del primo messaggio con qualcosa di meno generico che spieghi meglio la situazione.
Cerca di dare più informazioni possibili anche nel messaggio vero e proprio: sarà che ho ancora sonno ma non ho capito quale sarebbe il programma affetto dal bug.

Ciao :ciao:
Sei abbruzzese se dopo che ti sei strafogato un chilogrammo di pasta, hai il coraggio di dire alla cuoca "cacc ch'è cott" - Se entra un piccione in casa..chiudi le finestre!
Ubuntu User #28657 - Il mio vecchio hardware - Tag Codice
Avatar utente
steff
Moderatore Globale
Moderatore Globale
Messaggi: 40351
Iscrizione: domenica 18 febbraio 2007, 19:48
Desktop: LXQt+labwc
Distribuzione: Arch; Debian; Ubuntu Server
Sesso: Maschile
Località: Toscana
Contatti:

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da steff »

Prova questa sequenza data in una volta:

Codice: Seleziona tutto

nomeprocesso && sleep 5  && killall nomeprocesso && nomeprocesso &
se funziona così lo script è facile poi.
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
3637002
Prode Principiante
Messaggi: 54
Iscrizione: mercoledì 30 agosto 2006, 12:29

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da 3637002 »

Grazie mille, avevo provato qualcosa di simile, ma non uguale :).stasera torno a casa e provo subito. Ciao
Gerry Ghetto

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da Gerry Ghetto »

Il supporto di Lubuntu 14.04 finisce in aprile.
Avatar utente
nuzzopippo
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1638
Iscrizione: giovedì 12 ottobre 2006, 11:34

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da nuzzopippo »

Guarda questo script di test che ho fatto tempo fa, avvia un processo indipendente dalla shell intercettandone il pid, aspetta un po' e poi lo killa.

Eliminando la ridondanza di debug , sostituendo ad evince il Tuo processo e rilanciando alla fine potrebbe, forse, fare al caso Tuo?

Codice: Seleziona tutto

#!/bin/bash

echo corrente pid=$!

nohup evince "test.pdf" > /dev/null &

echo corrente pid=$!
idp=$!

echo "PDF in lettura, processo $idp, attendo e poi, forse, lo killo"

sleep 20

for p in `ps -o pid`
do
	if (( "$p" == "$idp" ))
	then
		echo "sto killando"
		kill $idp
	fi
done
echo 'PARE CHE QUESTO FUNZIONA!!!'
Fatti non foste a viver come bruti ...
Avatar utente
axilot
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2704
Iscrizione: lunedì 7 luglio 2008, 17:29
Distribuzione: Ubuntu 16.04 64bit

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da axilot »

Ma non è di 5 anni il supporto delle LTS cioè per Ubuntu 14.04 aprile 2019 oppure le derivate hanno un supporto minore?

Edit: trovato, Lubuntu14.04 che è la prima versione LTS di Lubuntu ha un supporto di solo 3 anni, vale lo stesso per la 16.04 LTS.
"Experience, the name men give to their mistakes" (O.Wilde)
Pc principale: Ubuntu 16.04 64Bit - Pc secondario: Ubuntu 18.04 64 Bit - Raspberry Pi: Rpi 1B+, Rpi 2, Rpi 3+, Rpi Zero W
Gerry Ghetto

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da Gerry Ghetto »

axilot [url=http://forum.ubuntu-it.org/viewtopic.php?p=4962722#p4962722][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Ma non è di 5 anni il supporto delle LTS cioè per Ubuntu 14.04 aprile 2019 oppure le derivate hanno un supporto minore?
Sono le communità delle derivate che forniscono il supporto per le derivate. Tutte le derivate hanno 3 anni, eccetto Kubuntu 14.04 ed Edubuntu 14.04 (5 anni). Canonical fornisce il supporto di 5 anni solo per Ubuntu ed Ubuntu Kylin per i pacchetti in main e restricted.
3637002
Prode Principiante
Messaggi: 54
Iscrizione: mercoledì 30 agosto 2006, 12:29

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da 3637002 »

Ciao, ho provato in entrambi i modi.
Accade una cosa strana che avevo già notato.
Appena avviato il pc,se lancio il comando, il primo processo non si chiude, ma devo scivere ctrl + c da terminale per interromperlo. Se rilancio lo script (qualunque dei due) fa quello che dovrebbe fare: si apre, attende, si chiude e si riapre.

Sembra che al primo avvio del programma ci sia qualcosa di diverso infatti il log di avvio dice che inpiega circa 80 ms contro i 2 della seconda volta. Come posso capire quali altri processi vengono lanciati per provare ad avviarli prima del programma stesso?
Purtoppo durante la settimana ho poco tempo da dedicare alla cosa. Ma proverò ancora. Grazie mille
Avatar utente
nuzzopippo
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1638
Iscrizione: giovedì 12 ottobre 2006, 11:34

Re: Script per lanciare, chiudere e rilanciare un programma

Messaggio da nuzzopippo »

Può essere che si avvii quando non è ancora completo il caricamento della configurazione di sistema e/o utente.

Se lo lanci da script prova a ritardarlo inserendo uno sleep da 90 secondi (dato che ne impiega 80 ad avviarsi) altrimenti scriviti un tuo script e lancialo da li assegnandogli un ritardo per l'avvio, è possibile che potrebbe anche non risultare più necessario killarlo.

[Edit] potrebbe anche darsi che al suo avvio configuri qualcosa o faccia qualche operazione che non viene ripetuta in seguito, in tal caso quanto sopra non servirebbe ... in tale evenienza dovresti consultare la docs del programma o cercare di capire cosa fa, per poter affrontare il problema.
Fatti non foste a viver come bruti ...
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 5 ospiti