У меня есть сторожевой скрипт, который запускает приложения, перечисленные в файле. Я хочу иметь возможность запускать приложения, указанные в этом файле. В настоящее время я просто прокручиваю файл и запускаю его в фоновом режиме, если с этими приложениями не связан pid, я просто запускаю приложение с (list_Entry &), чтобы разрешить все аргументы, которые могут быть у приложения, и перенаправления ввода-вывода. Хотя аргументы работают правильно, он не работает для listEntry, который выглядит как «my_app >> /tmp/mylog.txt 2>&1», аргумент перенаправления не создает /tmp/mylog, вместо этого стандартный вывод направляется на мой скрипт . Как я могу предотвратить это?
пока правда
делать
тест /mnt/appsList && {
input="/mnt/список приложений"
в то время как IFS= чтение строки -r
делать
если эхо $строка | grep -q "^[a-z/(]"; затем
app_base=$(базовое имя `echo "$line"|cut -f1 -d ' '|tr -d [:space:]`)
#echo "статус выполнения тестирования для $app_base"
pid_app=$(pgrep -f $app_base)
# echo "`date` : pid $app_base равен $pid_app" | тройник -a $_SYS_LOG_DIR/system_log
если [ -z "$pid_app" ];тогда
echo "`date` : Выполняется $line " | тройник -a $_SYS_LOG_DIR/system_log
(строка $) &
спать 10
фи
фи
сделано < "$ input"
}
спать 5
сделано
Спасибо
Ратин