18.3.9. Определение интерактивного режима выполнения сценария

18.3.9. Определение интерактивного режима выполнения сценария

Иногда требуется выяснить, выполняется сценарий в интерактивном режиме (режим терминала( либо не в интерактивном режиме (команды cron или at). Такая информация необходима для того, чтобы сценарий мог определить, где можно получить вводимые данные и куда направлять выводимые данные. Чтобы уточнить режим выполнения сценария, достаточно воспользоваться командой test с опцией -t. Если возвращается значение "истина", сценарий выполняется в интерактивном режиме.

$ pg ifinteractive

#! /bin/sh

# ifinteractive

if [ -t ]; then

echo "We are interactive with a terminal"

else

echo "We must be running from some background process probably cron or at " fi