これは基本的に私の最初のbashスクリプトです。本当にシンプルなものがあります。Bash - なぜこの条件は私がそれをするべきだと思うのですか?
"$(pgrep firefox)"
が、Firefoxが動作していないのに何かを返すように見えない理由はわかりません。
スクリプトでは、常にFirefoxインスタンスを実行したままにしてください。
#!/bin/bash
while true;
do
if [ -z "$(pgrep firefox)" ]
then
echo "firefox not running. Starting now..."
firefox
fi
done
私は予想通り、それは
if [ -z "$(pgrep firefox)" ]; then echo "not running"; fi
あなたは、コマンドプロンプトテストが逆の論理(「実行中の」V「は実行していない」)を有することを実現?また、 ";"の必要はありません。真実の後で(それは傷つけるとは思わない)。 –
私は「走っていない」という意味でした。更新しました、ありがとう! – Bogdan
これは非常に忙しいスクリプトです。あなたはwhileループの中で数秒間スリープ状態にしたいかもしれません。 –