0

SharpSsh を使用して ASP.NET/C# からスクリプトを実行しています。スクリプトが実行され、UNIX から ps -ef grep を実行すると、同じスクリプトが 2 回実行されていることがわかります。1 つは csh -c で、もう 1 つは ksh です。スクリプトにはシバン ksh があるため、なぜ csh のコピーも実行されているのかわかりません。また、同じスクリプトを UNIX から直接実行すると、1 つのコピーのみが ksh で実行されます。スクリプト内から実行されている他のシェルはありません。

4

1 に答える 1

1

ほとんどの Unix/Linux には、プロセス ツリーを表示するコマンドまたはオプションがあり、次のようなインデントされたリストを使用して、ps または ptree または ??? の -t または -T オプションを探します。

  USER     PID    PPID    START TT        TIME CMD
  daemon       1       1 11-03-06 ?            0 init
  myusr   221568       1 11-03-07 tty10    1.00s  \_ -ksh
  myusr   350976  221568 07:52:11 tty10        0  |   \_ ps -efT

csh は、スクリプトを引数として含むユーザー ログイン シェルであることがわかると思います (csh プロセスの完全なコマンド ラインを表示するには、ps に別のオプションを使用する必要がある場合があります)。 ksh がスクリプトを実行していること、およびスクリプトが呼び出している外部コマンドについて ksh の下でさらにサブプロセスが実行されていることを確認できます。

これが役立つことを願っています。

追伸、あなたは新しいユーザーのようです。役立つ回答が得られた場合は、承認済みとしてマークすることを忘れないでください。または、有用な回答として + (または -) を付けてください。

于 2011-03-10T14:15:09.523 に答える