Как создать SIGQUIT как команду в командной строке?

Я абсолютный нуб в сценариях оболочки. Я создаю файл .sh для выполнения нескольких команд, но моя проблема в том, что последняя команда является исполняемым файлом, который после исключения остается открытым, а процессы продолжают работать в терминале, пока я не закрою терминал или не нажму Ctrl + [ 113] или \. Я хочу, чтобы убить эти процессы или выйти из терминала, который также будет убивать процесс автоматически при запуске файла .sh. это файл .sh ниже. извините мой вопрос, если это было просто.

#!/usr/bin/env bash
cd ./var/www/testGraduationProject1/public/Hume2Compiler/bin/
export PATH=$PATH:`pwd`
humec -lotsaspace tails.hume;
./tails > hello.txt

// Я попробовал эти две команды, но они просто останавливают загрузку процесса в терминале, но без закрытия терминала или самого процесса.

killall tails
stty -a | grep inter
0
задан 29 May 2012 в 22:42

2 ответа

Ваш вопрос неопределенный, но я предполагаю, что вы спрашиваете, как заставить команду tails работать в течение N секунд, а затем убить ее?

Если это так, используйте timeout ] (устанавливается по умолчанию в 12.04).

Вот ваш скрипт, использующий timeout (убрал лишний код, пока я был у него). Он запускается tails в течение 10 минут (600 секунд), а затем убивает его сигналом TERM.

#!/usr/bin/env bash
PATH=$PATH:$PWD/var/www/testGraduationProject1/public/Hume2Compiler/bin
humec -lotsaspace tails.hume
timeout 600 tails > hello.txt

См. http://mywiki.wooledge.org/BashFAQ/068 для получения дополнительной информации.

0
ответ дан 29 May 2012 в 22:42

Попробуйте это:

Поместите эту строку явно в фон:

./tails > hello.txt&

Затем добавьте

pkill tails
0
ответ дан 8 June 2020 в 01:57

Другие вопросы по тегам:

Похожие вопросы: