[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: lanciare uno script "interattivo" all'avvio



On Thu, Jul 09, 2015 at 06:43:57PM +0200, Federico Bruni wrote:
> Ciao a tutti
> 
> Sto cercando di far sì che al login sia lanciato uno script che prevede
> un'interazione con l'utente (quindi devo lanciare un terminale).
> 
> Lo stesso comando che vedete sotto, lanciato da un altro terminale,
> funziona. Ma all'avvio non parte. Ecco il file desktop:
> 
> $ cat ~/.config/autostart/test.desktop
> [Desktop Entry]
> Type=Application
> Exec=lxterminal -e sh ~/test.sh
> 
> Cosa c'è che non va?
> 
> Grazie
> Federico

(A CASO)
Mi sembra che il problema, purtroppo male posto, potrebbe essere che il 
terminale si apre, esegue lo script, e subito si chiude? In quel caso ho la 
soluzione: le shell interattive quando esegui uno script non sono interattive. 
Neanche a mettere nello script set -o interactive o cosa diavolo si metteva.
Devi metterlo, quello script, nel .bashrc se la shell è bash (e se il .bashrc 
lo usi per altre cose, devi fare del voodoo), altrimenti se è dash (la shell 
che veniva evocata chiamando sh) in un file che passerai alla variabile 
d'ambiente ENV all'avvio di sh. Quindi prova così:

[Desktop Entry]
Type=Application
Exec=env ENV=~/test.sh lxterminal -e sh -i

Speriamo bene!

--
Teodoro Santoni

Something is wrong. I don't wanna compile 20 KB of Go code to list files.


Reply to: