0

Unix 環境、特に AIX 環境で共有ライブラリ オブジェクトを使用している実行可能ファイルまたはプロセスを確認するにはどうすればよいですか。コマンドはありますか?

4

4 に答える 4

2

Linux では、次のようにします。

for i in /usr/bin /bin /usr/local/bin /sbin /...; do
  # edit: bug fix to display which filename has the library
  # the egrep component will extract line with your library
  # or line with ":::", which contains name of the binary
  find /usr/bin -printf '::: %p\n' -exec ldd \{\} \; | egrep 'your lib. name|:::'
done

AIX の ldd パッケージは、ここで説明されているように見つけることができます

実行中のプロセスを確認するには、次のようにします。grep 'あなたのライブラリ名'. AIX の lsof を取得する方法については、こちらを参照してください。

于 2009-05-28T08:58:21.637 に答える
0

フューザーはあなたが望むものかもしれません。

于 2009-05-28T15:16:00.470 に答える
0

それが役立つかどうかはわかりませんが、 lsofできるかもしれません。

于 2009-05-28T08:57:38.033 に答える
0

Solaris Open またはそれ以外の場合:

例えば; 一部の出力が抑制されました...

mybox@myplace02:~$ pldd ``pgrep pidgin
5451: pidgin
/usr/lib/libc/libc_hwcap1.so.1
/usr/lib/libgdk-x11-2.0.so.0.1400.3
/usr/lib/libgdk_pixbuf-2.0.so.0.1400.3
/usr/lib/libglib-2.0.so.0.1800.0
/usr/lib/libgobject-2.0.so.0.1800.0
/usr/lib/libmlib.so .2
/usr/lib/libmlib/libmlib_sse2.so.2
/usr/lib/libgthread-2.0.so.0.1800.0
/lib/libpthread.so.1
/usr/lib/locale/en_US.UTF-8/en_US .UTF-8.so.3
/usr/lib/locale/common/methods_unicode.so.3
/lib/libthread.so.1
/usr/lib/libpurple.so.0.5.1
/lib/libnsl.so.1
/usr/lib/libgtk-x11-2.0.so.0.1400.3

于 2009-05-28T23:05:45.060 に答える