1

私がやろうとしているのはcat /proc/{pid}/fd/{fd-id}、OSX で複製することです。

gdbを使用して実行できると思います。

プロセスは。

pid 4554 の fd 34 から読み取りたいとします。

  1. gdb を実行し、pid 4554 にアタッチします。
  2. 'w' モードを使用してファイルを開きます。({fd-id} から読み取ったデータを書き込むため。このファイルの fd が 65 であるとします。
  3. fseek fd 34 を 0 にします。
  4. ループを開始します。
  5. fd 34 からいくつかのデータを読み取り、メモリに保存します。
  6. バッファリングされたデータをメモリから fd 65 に書き込みます。
  7. fd 34 の EOF に達するまで、このループを実行し続けます。
  8. fd 65 を閉じます。
  9. pid 4554 から切り離し、gdb を閉じます。

今、私はgdbをあまり知らないので、gdbコマンドで上記の手順を実行する方法を誰か教えてもらえますか?

4

0 に答える 0