O comando TRAP -------------- por Osvaldo Santana Neto Algumas vezes é necessário que algum script nosso intercepte sinais do sistema operacional e execute certos comandos quando isso acontece. Isto pode ser feito com o comanto trap. A sintaxe do comando trap é a seguinte: trap [funcao-a-executar] número_do_sinal Se não for passada a função a executar o trap será removido. Com esse comando, sempre que receber o sinal especificado, o nosso script executará a função definida. Veja o exemplo abaixo: #!/usr/bin/ksh # Funcao que tratara o Ctrl-C ctrlc() { # Nao intercepta mais o sinal trap 2 # Funcao propriamente dita echo "Removendo lock..." rm arquivo_lock } # Intercepta o sinal de Ctrl+C (Ctrl+C == SIGINT == 2) # para maiores informacoes sobre sinais: man kill trap ctrlc 2 # cria arquivo de lock touch arquivo_lock # script while [ -f arquivo_lock ]; do # Execute esse loop enquanto existir o arquivo echo "Executando o loop... Pressione Ctrl+C para interromper..." sleep 10 done