2014-02-07 2 views
1

У меня есть минимальный скрипт, который просто слушает в сокете и печатает все, что отображается в порту в принципе, и, конечно же, отлично работает. Однако я, не имея возможности очистить после I^zОчистка после вызова nc в вечной петле bash

  • Возможно, sigtstp не является правильным способом для этого?
  • Могу ли я заставить Bash прослушать и выйти на ctrl + c?
  • Могу ли я очистить процесс nc? Он держит окклюзию порта и силы (ну ...) убивают -9?

#!/bin/bash 
while : 
do 
    nc -l -p $1 
done 

ответ

0

Я не знаю, что вы имеете в виду, но попробовать этот скрипт (проверялось, у меня нет н.д. установлен) «Могу ли я сделать Баш слушать^C?»:

#!/bin/bash 
pid=0 

cleanup() { (($pid != 0)) && kill -9 $pid; } 
trap "cleanup" EXIT 

while : 
do 
    nc -l -p $1 
    pid=$! 
done 
+0

Наа, извините, это не меняет поведения. Я имел в виду, что на CTRL + c я хочу, чтобы скрипт вышел. – nic

+0

Вы говорите, что вы не можете прервать «пока истина, сон 1s, сделанный» с помощью Ctrl + C? – bos

Смежные вопросы