検索

ホームページ  >  に質問  >  本文

バックグラウンドプロセスでシェルスクリプトの実行を停止する方法

<p>mysql クライアントを使用していくつかのコマンドを実行するために、mysqld をバックグラウンドで実行しようとしていますが、プロセスをフォアグラウンドに切り替えると、スクリプトの実行が停止します。これは私が使用するスクリプトです: </p> <pre class="brush:sh;toolbar:false;">set -m daemon="/usr/bin/mysqld --user=mysql --console --skip-name-resolve --skip-networking=0 $@" $デーモンと exec echo "テスト" 実行ファイル %1 </pre> <p>私はシェル スクリプト プログラミングの専門家ではありません。いくつかの Web サイトを調べたところ、コマンドを実行するこの方法を見つけました。 </p>
P粉722409996P粉722409996454日前701

全員に返信(1)返信します

  • P粉521748211

    P粉5217482112023-09-04 17:45:03

    ###いいえ。スクリプトは

    exec echo "Test" の後に停止します。 exec 現在のプロセス (シェル スクリプトなど) を次のコマンドに置き換えます。次の方法で確認できます: リーリー

    解決策は簡単です。

    exec を使用しないことです。

    ところで: シェル スクリプトで

    fg を使用する理由は明確ではありません。対話型シェルでは、fg はスクリプト内でのみ機能しません。

    返事
    0
  • キャンセル返事