アンパサンドを変数に入れ、それを使用してプロセスをバックグラウンドに送信する方法があるかどうかを知りたいです。
これは機能します:
BCKGRND=yes
if [ "$BCKGRND" = "yes" ]; then
sleep 5 &
else
sleep 5
fi
しかし、これら5つのラインを1つだけで達成するのはクールではないでしょうか。そのようです:
BCKGRND='&'
sleep 5 ${BCKGRND}
しかし、それはうまくいきません。BCKGRNDが設定されていない場合は機能しますが、設定されている場合はリテラル「&」として解釈され、エラーになります。
echo $!
、PIDを返します