Я хочу знати, чи є спосіб помістити ampersand у змінну і все ж використовувати її для надсилання процесу на задній план.
Це працює:
BCKGRND=yes
if [ "$BCKGRND" = "yes" ]; then
sleep 5 &
else
sleep 5
fi
Але хіба не було б круто виконати ці п'ять рядків лише одним? Так:
BCKGRND='&'
sleep 5 ${BCKGRND}
Але це не працює. Якщо BCKGRND не встановлений, він працює, але коли він встановлений, він інтерпретується як буквальне "&" та помилки.
echo $!
повертає PID