Як я можу написати сценарій Bash, який запускає тривалу програму і зберігає ідентифікатор процесу програми в окремому файлі?
Я хочу щось подібне
#!/bin/bash
exec long_running_tool
echo `ps af |grep "long_running_tool" |awk '$5 == "long_running_tool" {print $1}'` > pid_file
Однак саме це зробить інструментps після завершення роботи.
Чи є спосіб отримати ідентифікатор процесу створеного процесу?
@ e-t172 дякую, що вказали. Я видаляю 'exec' потім.
—
DerMike
Будь ласка, див. Управління процесами .
—
Призупинено до подальшого повідомлення.
long_running_toolпроцесом. Отже, exec ніколи не повертається і наступний рядок ніколи не досягається. Дивhelp exec,execve(2).