È possibile eseguire più di un comando in un file someapp.desktop? [duplicare]

4

Sto solo cercando di trovare un modo per eseguire un comando extra quando apro un'app (Firefox), ma sto fallendo miseramente ...

La domanda originale è qui .

Ho provato ad aggiungere il mio comando dopo il comando app come nella seguente riga:

Exec=firefox %u & /bin/monitor_process.sh firefox

Ma ciò comporta che monitor_process.sh venga aperto da FF, mostrando una finestra di dialogo "Apri file con ...".

Ho provato ; & && ma inutilmente ...

Quindi, qualche idea su come gestire più comandi nei file .desktop?

Inoltre, Serg ha detto:

  

anche questo non funzionerà. Exec = deve avere esattamente una dichiarazione, no; è permesso.

    
posta ruessel 13.04.2016 - 22:50

2 risposte

0

Potresti provare questa riga di Exec per il tuo file .desktop :

Exec= bash -c "firefox && /bin/monitor_process.sh firefox"

bash aprirà una shell e interpreterà correttamente & amp;. & amp;.

    
risposta data Mahdi 13.04.2016 - 22:57
0

I file desktop non vengono eseguiti in una shell; ciò significa che non puoi eseguire comandi complessi come firefox %u & /bin/monitor_process.sh firefox direttamente; in tal caso tutto fallisce nella parte & , che non è interpretata come "background firefox %u " ma letteralmente come & , che viene passata come argomento a firefox %u insieme a /bin/monitor_process.sh e firefox .

Per correggere esegui firefox %u & /bin/monitor_process.sh firefox in una shell che almeno supporti il ​​controllo dei processi (semplicemente dash funzionerebbe):

[Desktop Entry]
Name=foo
Exec=sh -c 'firefox %u & /bin/monitor_process.sh firefox'
Type=Application
    
risposta data kos 14.04.2016 - 03:10

Leggi altre domande sui tag