Come posso creare un lanciatore di applicazioni per un file .sh?


20

Ho questo file run.sh e ho creato un collegamento simbolico sul mio desktop.

Quando faccio doppio clic su di esso, appare la seguente finestra di dialogo

E devo fare clic su "Esegui" ogni volta. Come posso creare un collegamento che viene eseguito per impostazione predefinita?

Risposte:


19

Invece di collegarti direttamente al file .sh, crea un programma di avvio dell'applicazione come segue:

  • Fare clic con il tasto destro sul desktop
  • Scegli "Crea Launcher ..."
  • Cambia "Applicazione" in "Applicazione nel terminale" nella casella a discesa.
  • Dagli un nome come "Idea"
  • Immettere il comando in questo modo /path/to/script/idea.sh
  • Aggiungi un commento, se lo desideri, verrà visualizzato quando si passa il mouse su di esso se sposti il ​​lanciatore su una barra dei menu.

Quindi quando fai clic sul programma di avvio si aprirà una finestra del terminale e il comando verrà eseguito lì.

Se non si desidera aprire un terminale per visualizzare alcun output, utilizzare semplicemente "Applicazione" anziché "Applicazione nel terminale".

Potrebbe essere necessario modificare il file desktop con qualcosa come gedit per aggiungere il "Percorso" dello script. Come questo:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher

Vorrei poter aggiungere un'immagine non-svg all'icona creata. Il resto ha funzionato perfettamente Grazie.
OscarRyz,

Mhh .. strano, una volta creato, potrei associare l'icona png Ora sembra così: yfrog.com/5gscreenshot20100817at719p Bello!
OscarRyz,

Questo funziona Tuttavia, quando rimuovo l'icona dal mio desktop, scompare anche dal programma di avvio. Come posso farlo rimanere nel programma di avvio quando mi libero dal desktop?
amorfis,

9

Perché non configurare solo Nautilus per l'esecuzione predefinita?

In Nautilus vai a Modifica-> Preferenze-> Comportamento e fai clic:

"Esegui file di testo eseguibili quando vengono aperti"


probabilmente non è qualcosa che la maggior parte delle persone vuole suggerire come predefinito, ma tuttavia molto istruttivo, può essere utile sapere che è possibile.
ithkuil,

2

La soluzione di Richard non funziona per Unity Desktop che le versioni recenti di Ubuntu utilizzano per impostazione predefinita. Per creare facilmente scorciatoie in unità è possibile utilizzare il "Menu principale" aka applicazione alacarte che consente di modificare i programmi. Basta fare clic sulla categoria appropriata e quindi su "Crea elemento".


1

Volevo semplificare il lancio di "Non morire di fame" per i miei figli. Ho avviato il programma con /usr/games/dontstarve/bin/dontstarve.shun terminale, ma lo volevo nel menu delle applicazioni.

Ho aggiunto una voce di menu con Alacarte ma non funzionava perché era un file .sh.

Dopo molte ricerche, ho pensato che dovevo specificare il percorso per lo script.

Aggiungi il percorso come spiegato in Variabili del desktop

Ho individuato il lanciatore alacarte-made-51cc077a-58af-11e3-a764-00252267190b.desktopin ~/.local/share/applications/e modificato con l'aggiunta della linea di percorso.

Ora il file di avvio è simile al seguente:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/kurt/Games/dontstarve/dontstarve.xpm
Exec=/usr/games/dontstarve/bin/dontstarve.sh
Path=/usr/games/dontstarve/bin
Name[en_US]=Dont Starve
Name=Dont Starve
Icon=gnome-panel-launcher

Funziona come un campione. Spero che questo aiuti qualcun'altro. (In realtà eseguo Mint 15 Olivia basato su Ubuntu Raring)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.