---
name: "peekfd"
section: "1"
platform: "linux"
package: "psmisc"
version: "23.7-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/peekfd"
---

# peekfd(1)

peek at file descriptors of running processes

## NAME

peekfd - peek at file descriptors of running processes

## SYNOPSIS

**peekfd** \[**-8**,**--eight-bit-clean**\] \[**-n**,**--no-headers**\] \[**-c**,**--follow**\] \[**-d**,**--duplicates-removed**\] \[**-V**,**--version**\] \[**-h**,**--help**\] *pid* \[*fd*\] \[*fd*\] ...

## DESCRIPTION

**peekfd** attaches to a running process and intercepts all reads and writes to file descriptors.  You can specify the desired file descriptor numbers or dump all of them.

## OPTIONS

- \-8

  Do no post-processing on the bytes being read or written.

- \-n

  Do not display headers indicating the source of the bytes dumped.

- \-c

  Also dump the requested file descriptor activity in any new child processes that are created.

- \-d

  Remove duplicate read/writes from the output.  If you're looking at a tty with echo, you might want this.

- \-v

  Display a version string.

- \-h

  Display a help message.

## FILES

**/proc/***\****/fd**

Not used but useful for the user to look at to get good file descriptor numbers.

## ENVIRONMENT

None.

## DIAGNOSTICS

The following diagnostics may be issued on stderr:

- **Error attaching to pid** *\<PID\>*

  An unknown error occurred while attempted to attach to a process, you may need to be root.

## BUGS

Probably lots.  Don't be surprised if the process you are monitoring dies.

## AUTHOR

Trent Waddington ⟨trent.waddington@gmail.com⟩

## SEE ALSO

[**ttysnoop**(8)](/ttysnoop/8.md)
