Creo que Ctrl- Cpuede ser atrapado en scripts bash. ¿También es posible atraparlo dentro de un script Awk para manejar ese evento?
Por ejemplo, para abortar el procesamiento, pero imprimir los resultados de lo que ya se ha procesado, en lugar de simplemente dejarlo en silencio.
shell-script
awk
trap
Eugene Beresovsky
fuente
fuente
Respuestas:
No conozco ninguna
awk
implementación que tenga soporte para eso. Podrías escribir una extensión paragawk
eso , pero aquí, prefiero cambiar a otro idioma.perl
facilita la conversión deawk
scripts con sua2p
script.Por ejemplo, si tiene un
awk
script como:a2p
en ella te dará algo como:Que puede editar para agregar su manejo de señal (y eliminar ese procesamiento de
var=value
argumentos que no queremos aquí, y la parte destinada a sistemas que no son compatibles#!
):Otra alternativa podría ser la de interrumpir la alimentación de los datos a
awk
, y tienenawk
ignorar la SIGINT, al igual que en lugar de:hacer:
Ctrl+Centonces matará
cat
pero noawk
.awk
seguirá procesando la entrada restante en la tubería.Para detectar la Ctrl+Cen
awk
, usted podría hacer:fuente