0

我想知道 1234 正在写入什么文件进程。

$ strace -etrace=write -p 1234

显示句柄,如何从句柄中获取文件名?

4

1 回答 1

0

我想知道 1234 正在写入什么文件进程。

你可以试试lsof -p

cnicutar@lemon:~$ lsof -p $$
COMMAND   PID     USER   FD   TYPE DEVICE SIZE/OFF    NODE NAME
bash    22364 cnicutar  cwd    DIR    8,6     4096  262145 /home/cnicutar
bash    22364 cnicutar  rtd    DIR    8,5     4096       2 /
bash    22364 cnicutar  txt    REG    8,5   955024 2616381 /bin/bash
....
bash    22364 cnicutar    0u   CHR  136,0      0t0       3 /dev/pts/0
bash    22364 cnicutar    1u   CHR  136,0      0t0       3 /dev/pts/0
bash    22364 cnicutar    2u   CHR  136,0      0t0       3 /dev/pts/0

或者,您可以进入/proc/PID/fd并查看描述符(使用 maybe readlink)。

于 2012-06-11T14:53:56.530 回答