¿Dónde se abandona la fuerza?

12

Estoy tratando de hacer un iniciador personalizado en 11.10 para el iniciador de cierre de fuerza especial que teníamos en 11.04 (podría agregarlo desde la lista de aplicaciones, pero ahora no se encuentra en ninguna parte, incluso en alacarte ...) ... así que Intento usar información desde aquí, pero no tengo idea de cuál es el archivo o comando real para forzar el cierre ni dónde está en el sistema de archivos.

esta pregunta es realmente específica para forzar el abandono y no se trata de preguntar cómo crear un lanzador.

crearé un archivo llamado forcequit.desktop y lo pondré en la carpeta ~ / .local / share / aplicaciones y luego lo arrastraré a la barra de herramientas como se dice en otro lugar.

el contenido del archivo se verá así:

#!/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;

supongo que podría ser un comando especial que toma un argumento, de nuevo si tiene la información, por favor dígale :)

escribí comentarios en el archivo sobre la información que necesito ...

editar: ok ahora funciona mostrando un ícono especial de X y fuerza a salir correctamente ... ahora solo necesito averiguar cómo obtener instrucciones para que aparezca un usuario final, al igual que cuando se usa desde CLI ... supongamos que muestra el comentario del lanzador en la pantalla en alguna parte alguna idea o enlaces? o tal vez necesito agregar algo a este archivo de inicio?

última edición: bueno, se ha encontrado la solución de la edición anterior, es el uso de la notificación de envío lo que hace el truco ... como ahora se refleja en el código ... disfrute de la solución para su escritorio (o para los usuarios finales que admite !)

última edición: toda esta charla me da ganas de ir a buscar opciones de notificación y envío un poco más ... y bueno, a mayor escala, en todos los otros comandos que puedo usar ... notificar-envío es parte de gnome, ¿es eso? ? o es parte de sh? (dudo que sea de sh)

edite a la última edición: no importa eso ... también encontré una respuesta a eso ... notificar-enviar es parte del paquete de la biblioteca libnotify ... y notificar-enviar está en la carpeta de herramientas (tuve problemas para encontrarlo al principio. .) y no, no es específicamente parte de gnome, sino más bien otra biblioteca utilizada por muchas aplicaciones :)

marc-andre benoit
fuente

Respuestas:

10

El comando, como ya dijo WarriorIng64, es xkill.

Para mostrar algunas instrucciones para el usuario final, tal vez use

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

Ahora, para combinar dos comandos en un lanzador, tendrá que envolverlos sh -c '...', por lo que su archivo .desktop debería decir

Exec=sh -c 'notify-send "Click on an application to force-close it, or right-click to cancel."; xkill'
Marius Gedminas
fuente
¡Vale la pena votar por ganarme 15 minutos!
Scaine
ese aviso de envío hace el truco final :)
marc-andre
1
@ Mario Esto es claramente superior a mi respuesta aceptada. ¡Buen trabajo para hacerlo más presentable y fácil de usar!
Christopher Kyle Horton
En conclusión, me pregunto sobre el uso de sh VS bash ... solo por el bien de la portabilidad (porque todos tienen sh, pero no todos pueden usar / have bash (¡lo que en sí es extraño pero posible!))
marc-andre benoit
1
Al menos para mí en Ubuntu 11.04, escape no funciona, pero al hacer clic derecho se cancelará el mensaje xkill.
Shane S.
7

En lugar de escribir el suyo, puede intentar esto:

Flashfreeze

Ve aquí y échale un vistazo; http://www.omgubuntu.co.uk/2011/10/freezeunfreeze-unity-app-killer/

o http://www.omgubuntu.co.uk/2011/10/force-quit-applet-unity-launcher/

lqlarry
fuente
zumbido ... no es mucho más útil que señalarme hacia el ícono (después de descargar y leer el código fuente del archivo de script ... no necesito descongelar y tal :) pero gracias por tu respuesta ...
marc-andre benoit
Pero no hay forma de hacer que aparezca este menú (por ejemplo, haciendo clic con la tecla Mayús). A veces aparecerá si una aplicación se congela correctamente, pero si una aplicación todavía responde pero se niega a cerrar. No tienes suerte.
Timmmm
6

No sé si hay un ícono para forzar la salida, pero el comando relevante es xkill.

Christopher Kyle Horton
fuente
1
el icono en realidad es gnome-panel-force-quit que editaré ahora mismo en consecuencia ..
marc-andre
2

Si necesita absolutamente la notificación, entonces puede lograrlo con notificar-enviar.

Cree el siguiente archivo, tal vez como 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

Luego márquelo como un script con chmod +x forceclose

Entonces tambien :

a) muévalo a su directorio / bin con sudo mv forceclose /bin/forceclosey cambie su lanzador para llamar en forcecloselugar de xkill. (útil para múltiples usuarios del mismo sistema, tal vez)

o

b) cambie su lanzador para que apunte a cualquier directorio que contenga su script forceclose. Tenga en cuenta que otros usuarios de ese sistema obviamente no podrán usar su script.

Scaine
fuente
1
Y veo que Marius me ganó por los 15 minutos que me llevó investigar esa respuesta y publicarla ... <suspiro>
Scaine
demasiado intrincado, pero gracias por tu esfuerzo! Quiero decir, es más elegante tenerlo todo en un solo archivo, en lugar de crear uno adicional :) ¡la solución propuesta por Mario hace exactamente esa mejor suerte la próxima vez!
marc-andre benoit
Hiciste un gran problema con la notificación para tus "usuarios", por lo que supuse que podrías tener varios usuarios en cada sistema, en cuyo caso, agregarlo a / bin tiene sentido. Me alegro de que hayas encontrado una respuesta que se adapte bien
Scaine
1
PD: ¿crear un archivo, marcarlo como ejecutable y copiarlo en otra ubicación es "demasiado complejo"? ¡No estoy seguro de que tengas la palabra correcta allí! :-)
Scaine
sí, lo siento ... estaba realmente cansado, estaba en un maratón de siestas (4 días seguidos) lo que quise decir es que tener la notificación incrustada en el código en lugar de en un archivo separado para una huella más pequeña, solo un archivo en lugar de dos, pero mirando hacia atrás en el archivo adicional hace que para una mejor modularidad que puede ser importante en los proyectos más grandes, supongo :)
Marc-André Benoit
1
  1. Presione Alt+ F2.
  2. Tipo xkill. luego presione Enter.
  3. Haga clic en la ventana que desea matar (haga clic con el botón derecho para cancelar).
Alexan
fuente
1
Esto funcionaría, pero el OP pregunta cómo convertirlo realmente en un lanzador en el que pueda hacer clic.
Christopher Kyle Horton
Yo sé cómo hacer esto en CLI, pero tengo usuarios que quieren tener nada que hacer con él :) que es la razón por la que la pregunta en primer lugar ..
Marc-André Benoit