我想要做的是cat /proc/{pid}/fd/{fd-id}
在 OSX 中复制。
我知道它可以使用 gdb 来完成。
过程是。
假设我想从 pid 4554 的 fd 34 中读取。
- 运行 gdb 并附加到 pid 4554。
- 使用“w”模式打开文件。(写入我们读取的 {fd-id} 的数据。假设这个文件的 fd 是 65。
- fseek fd 34 到 0。
- 开始一个循环。
- 从 fd 34 读取一些数据,将其保存到内存中。
- 将缓冲的数据从内存写入 fd 65。
- 继续运行此循环,直到达到 fd 34 的 EOF。
- 关闭 fd 65。
- 从 pid 4554 分离并关闭 gdb。
现在我真的不太了解 gdb 所以有人能说如何在 gdb 命令中执行上述步骤吗?