GNU/Linux >> Linux の 問題 >  >> Linux

UNIX/Linux システムで実行中のプロセスにコマンドライン引数を渡す方法は?

いくつかのオプションがあります:

ps -fp <pid>
cat /proc/<pid>/cmdline | sed -e "s/\x00/ /g"; echo

/proc/<pid> に詳細があります Linux の場合は、ご覧ください。

他の Unix では状況が異なる場合があります。 ps コマンドは /proc のどこでも機能します スタッフはOS固有です。たとえば、AIX には cmdline はありません /procで .


これでうまくいきます:

xargs -0 < /proc/<pid>/cmdline

xargs がない場合、引数は NUL に変換されているため、引数の間にスペースはありません。


完全なコマンドライン

Linux および Unix システムでは、ps -ef | grep process_name を使用できます 完全なコマンド ラインを取得します。

SunOS システムでは、完全なコマンド ラインを取得する場合は、

を使用できます。
/usr/ucb/ps -auxww | grep -i process_name

完全なコマンド ラインを取得するには、スーパー ユーザーになる必要があります。

引数のリスト

pargs -a PROCESS_ID

プロセスに渡される引数の詳細なリストを提供します。次のように引数の配列を出力します:

argv[o]: first argument
argv[1]: second..
argv[*]: and so on..

Linux 用の同様のコマンドは見つかりませんでしたが、次のコマンドを使用して同様の出力を取得します:

tr '\0' '\n' < /proc/<pid>/environ

Linux
  1. Linuxコマンドラインからソフトウェアをインストールする方法

  2. Unix / Linux でプロセスのパスを取得するにはどうすればよいですか

  3. コマンドラインからGNU/Linuxで特定のプロセスの親PIDを取得するには?

  1. コマンドラインを使用してLinuxでtar.gzファイルを抽出する方法

  2. コマンドラインを使用してLinuxでユーザーを削除する方法

  3. コマンドラインを使用してディレクトリ内のファイルの数を取得するにはどうすればよいですか?

  1. Linux –実行中のプロセスの壁掛け時計の時間を取得する方法は?

  2. UNIX / Linux :プロセスのナイスネス (優先度) を変更する方法

  3. 「ls」コマンドは Linux/Unix でどのように機能しますか?