Dov'è finita la forza?


12

sto provando a creare un launcher personalizzato in 11.10 per lo speciale force quit launcher che avevamo in 11.04 (potresti aggiungerlo dall'elenco delle app, ma ora non si trova da nessuna parte, anche in alacarte ..) .. così provo a usare le informazioni da qui, ma non ho idea di quale sia il file o il comando effettivo per la chiusura forzata né dove si trova nel filesystem ..

questa domanda è davvero specifica per forzare l'uscita da sola e non si tratta di chiedere come creare un launcher ..

creerò un file chiamato forcequit.desktop e lo inserirò nella cartella ~ / .local / share / applicazioni e quindi lo trascinerò sulla barra degli strumenti come è stato detto altrove.

il contenuto del file sarà simile al seguente:

#!/usr/bin/env xdg-open  
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=sh -c 'notify-send "Click on an application to force-close it, or press Esc to cancel."; xkill'
Name=Force Quit
Comment=Click on the app to quit with your pointer
Icon=gnome-panel-force-quit
Categories=System,Accessories;

suppongo che potrebbe essere un comando speciale che accetta un argomento, di nuovo se hai le informazioni per favore dillo :)

ho scritto commenti nel file sulle informazioni di cui ho bisogno ..

modifica: ok ora funziona con la visualizzazione di un'icona X speciale e forza la chiusura corretta .. ora devo solo scoprire come ottenere istruzioni per la visualizzazione per un utente finale, proprio come fa quando si utilizza dalla CLI .. supponiamo che visualizzi il commento del lanciatore sullo schermo da qualche parte? qualche idea o link? o forse devo aggiungere qualcosa a questo file di avvio?

ultima modifica: è stata trovata la soluzione della modifica sopra, è l'uso della notifica di invio che fa il trucco .. come ora si riflette nel codice .. goditi la soluzione per il tuo desktop (o per gli utenti finali che supporti !)

ultima modifica: tutto questo discorso mi fa venire voglia di cercare un po 'di più le opzioni di notifica-invio..e bene in scala maggiore con tutti gli altri comandi che posso usare ..... Notifica-invio fa parte di GNOME è vero? ? o fa parte di sh? (dubito che provenga da sh)

modifica all'ultima modifica: non importa che .. ho trovato una risposta anche a questo ... notification-send fa parte del pacchetto della libreria libnotify..e notification-send si trova nella cartella degli strumenti (ho avuto difficoltà a trovarlo all'inizio. .) e no, non fa specificamente parte di Gnome, ma piuttosto un'altra libreria utilizzata da molte app :)

Risposte:


10

Il comando, come già detto in WarriorIng64, è xkill.

Per mostrare alcune istruzioni per l'utente finale, forse usare

notify-send "Click on an application to force-close it, or right-click to cancel."

Ora per combinare due comandi in un unico programma di avvio, dovrai racchiuderli sh -c '...', quindi il tuo file .desktop dovrebbe dire

Exec=sh -c 'notify-send "Click on an application to force-close it, or right-click to cancel."; xkill'

Vale la pena votare per avermi battuto di 15 minuti!
Scaine,

che notifica invia invia il trucco finale :)
marc-andre benoit

1
@Marius Questo è chiaramente superiore alla mia risposta accettata. Ottimo lavoro che lo rende più presentabile e intuitivo!
Christopher Kyle Horton,

in conclusione, mi chiedo di usare sh VS bash .. è solo per motivi di portabilità (per tutti ha sh, ma non tutti potrebbero usare / avere bash (che di per sé è strano ma possibile!))
marc-andre benoit

1
Almeno per me su Ubuntu 11.04, escape non funziona, ma facendo clic con il tasto destro del mouse si annulla il prompt di xkill.
Shane S.

7

hum .. non molto utile oltre a indicarmi l'icona (dopo aver scaricato e letto il codice sorgente dal file di script .. non ho bisogno di un unfreeze e così :) ma grazie per la tua risposta ..
marc-andre benoit,

Ma non è possibile visualizzare questo menu (ad esempio facendo clic con il tasto Maiusc). A volte appare se un'applicazione è bloccata correttamente, ma se un'app è ancora reattiva ma si rifiuta di uscire? Sei sfortunato.
Timmmm,


2

Se hai assolutamente bisogno della notifica, puoi ottenerla con notifica-invio.

Crea il seguente file, forse come forceclose:

#! /bin/sh 

notify-send 'Force close application' 'Select a window to close it.  All data in that window will be lost.  Right click to cancel.' --icon=gtk-cancel
xkill

Quindi contrassegnalo come uno script con chmod +x forceclose

Quindi:

a) spostalo nella tua directory / bin con sudo mv forceclose /bin/forceclosee cambia il tuo launcher per chiamare forcecloseinvece di xkill. (utile per più utenti dello stesso sistema, forse)

o

b) cambia il tuo launcher in modo che punti a qualunque directory contenga il tuo script forceclose. Nota che altri utenti di quel sistema ovviamente non saranno in grado di usare il tuo script.


1
E vedo che Marius mi ha battuto per i 15 minuti che mi ci sono voluti per cercare quella risposta e
postarla

troppo intricato, ma grazie per il tuo sforzo! Voglio dire, è più elegante avere tutto in un unico file, piuttosto che crearne uno in più :) la soluzione proposta da Marius fa esattamente la migliore fortuna la prossima volta!
marc-andre benoit,

Hai fatto molto riguardo alla notifica per i tuoi "utenti", quindi ho pensato che potresti avere più utenti su ciascun sistema, nel qual caso, aggiungerla a / bin ha senso. Sono contento di aver trovato una risposta adatta però.
Scaine,

1
ps creare un file, contrassegnarlo come eseguibile e copiarlo in un'altra posizione è "troppo complicato"?!? Non sono sicuro che tu abbia la parola giusta lì! :-)
Scaine,

sì scusa .. ero davvero stanco, ero su una power nap marathon (4 giorni consecutivi) quello che volevo dire è che avere la notifica incorporata nel codice rispetto a un file separato fatto per un footprint più piccolo, solo un file invece di due, ma guardando indietro il file extra rende migliore una modularità che può essere importante in progetti più grandi immagino :)
marc-andre benoit,

1
  1. Premi Alt+ F2.
  2. Tipo xkill. quindi premere Enter.
  3. Fare clic sulla finestra che si desidera uccidere (fare clic con il tasto destro per interrompere).

1
Funzionerebbe, ma l'OP sta chiedendo come trasformarlo in un launcher sul quale puoi fare clic.
Christopher Kyle Horton,

so come fare questo sulla CLI ma ho utenti che non vogliono avere nulla a che fare con esso :) che è la ragione per cui faccio la domanda in primo luogo ..
marc-andre benoit
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.