Se você está no Linux, e eu li sua pergunta corretamente, veja em /proc
.
Para um processo específico, procure em /proc/[pid]/fd
, por ex. ls -l /proc/123/fd/
Há também uma maneira especial de acessar os fd do processo atual: /proc/self/fd
.
Observe que, por exemplo ls -l /proc/self/fd
seria para o processo ls
e não para
seu shell atual, que você pode ver por:
cat /proc/self/cmdline | tr 'cat /proc/self/status
0' '\n'
ou
Name: cat
State: R (running)
Tgid: 12696
Pid: 12696
PPid: 312
Para a última olhada, especialmente em PPid
, que deve ser o PID do seu shell.
cat /proc/self/cmdline | tr 'cat /proc/self/status
0' '\n'
Como experiência, você pode tentar abrir duas janelas de terminal:
- Na janela 1, insira
echo $$
para obter o PID desse shell. - Na janela 2, digamos
cat /proc/[pid]/fd/1
- Na janela 1, comece a digitar e observe o que acontece na janela 2.
- / proc no kernel.org
- proc no TLDP
- Sistemas de arquivos em man7.org