for - detener python en terminal en mac
uninstall python mac (2)
Usando python en la terminal en una Mac, escribe
ctrl-z
detendrá el python, pero no lo cerrará, dando un resultado como este:
>>>
[34]+ Stopped python
Como puedes ver, he detenido 34 llamadas de python.
Aunque podría usar
>>> exit()
Para salir de python, las preguntas son:
¿Existe una tecla corta para realmente salir (no solo detener) de python en la terminal? y por qué
ctrl-c
¿No funciona?
¿Cómo mato a todos los pitones detenidos?
Por cierto, ¿cómo podría escribir ''ctrl-c'' y otras teclas de acceso rápido con apariencia de teclado?
¡Gracias!
Esto no es un problema de Python, per se. Esto es un comportamiento de shell Unix y es una diferencia de Windows y otros sistemas. Vea el artículo de Wikipedia sobre CTRL-Z para una explicación más completa:
En sistemas similares a Unix, Control + Z es la asignación de teclado predeterminada más común para la secuencia de teclas que suspende un proceso (SIGTSTP). Cuando es ingresado por un usuario en su terminal de computadora, al proceso de primer plano actualmente en ejecución se le envía una señal SIGTSTP, que generalmente hace que el proceso suspenda su ejecución. Posteriormente, el usuario puede continuar la ejecución del proceso escribiendo el comando ''fg'' (abreviatura de primer plano) o escribiendo ''bg'' (abreviatura de fondo) y, además, escribiendo el comando ''disown'' para separar el proceso de fondo del terminal.
En OS X como en otros sistemas basados en Unix, puede usar el comando stty
para cambiar qué clave, si la hubiera, produce un SIGTSTP
(o un eof
, para el caso):
$ stty -a
speed 38400 baud; 30 rows; 90 columns;
lflags: icanon isig iexten echo echoe echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel iutf8
-ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
-dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
min = 1; quit = ^/; reprint = ^R; start = ^Q; status = ^T;
stop = ^S; susp = ^Z; time = 0; werase = ^W;
$ stty susp ^Y
$ cat
^Y
[1]+ Stopped cat
CTRL + d -> Define EOF (Fin de archivo).
CTRL + c -> Terminará la mayoría de los trabajos.
Si, sin embargo, ha escrito un programa de envoltura de Python que llama a otros programas de Python a su vez, Ctrl-c solo detendrá el trabajo que se está ejecutando actualmente. El programa contenedor continuará ejecutándose. En el peor de los casos, puedes hacer esto:
Abra: Aplicaciones -> Utilidades -> Monitor de actividad, busque el proceso etiquetado como python, resáltelo en el monitor de actividad y luego haga clic en "Salir del proceso".
Estas tres sugerencias deberían funcionar para la mayoría de las situaciones en las que desea que se detenga un programa.