下のスクリプトでexecを用いてシェルスクリプトを実行しようとしています。
定期的にページへアクセスがあった場合に、シェルスクリプトが同時に動かないようにするため
排他制御を加えないといけないのですが、ご教示いただけないでしょうか。

http://localhost/index.php?hoge=30
で引数を渡しています。

<?php
if(isset($_GET['hoge'])) {
    $hoge = $_GET['hoge'];
    //取得した値を表示
    print("$hoge<br>\n");
}

// hogeが規定値より大きい場合  
if ($hoge > 50 ){
    echo '動作1';
}        
//hogeが規定値と等しい場合 
elseif ($hoge == 50) {
    echo '動作2';
//hogeが規定値より小さい場合
} else {
    echo '動作3';
    exec(' /Users/hoge/Desktop/test.sh');
}
?>