GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo enumerar los descriptores de archivos abiertos (y los archivos a los que se refieren) en mi sesión bash actual

Sí, esto enumerará todos los descriptores de archivos abiertos:

$ ls -la /proc/$$/fd
total 0
dr-x------ 2 isaac isaac  0 Dec 28 00:56 .
dr-xr-xr-x 9 isaac isaac  0 Dec 28 00:56 ..
lrwx------ 1 isaac isaac 64 Dec 28 00:56 0 -> /dev/pts/6
lrwx------ 1 isaac isaac 64 Dec 28 00:56 1 -> /dev/pts/6
lrwx------ 1 isaac isaac 64 Dec 28 00:56 2 -> /dev/pts/6
lrwx------ 1 isaac isaac 64 Dec 28 00:56 255 -> /dev/pts/6
l-wx------ 1 isaac isaac 64 Dec 28 00:56 4 -> /home/isaac/testfile.txt

Por supuesto, como siempre:0 es stdin, 1 es stdout y 2 es stderr.
El 4º es un archivo abierto (para escribir) en este caso.


Suponiendo que desea enumerar los descriptores de archivos que están adjuntos a cualquier terminal, puede usar lsof /fuser o similar como:

$ lsof -p $$ 2>/dev/null | awk '$NF ~ /\/pts\//'
bash    32406 foobar    0u   CHR 136,31      0t0      34 /dev/pts/31
bash    32406 foobar    1u   CHR 136,31      0t0      34 /dev/pts/31
bash    32406 foobar    2u   CHR 136,31      0t0      34 /dev/pts/31
bash    32406 foobar    3u   CHR 136,31      0t0      34 /dev/pts/31
bash    32406 foobar  255u   CHR 136,31      0t0      34 /dev/pts/31

Estas herramientas básicamente analizan /proc , por lo que solo puede acceder a /proc/$$/fd/ también por ejemplo:

ls /proc/$$/fd/*

lsof -a -p $$

Solo fd de red:

lsof -i -a -p $$

Linux
  1. ¿Cómo enumerar el tamaño de cada archivo y directorio y ordenar por tamaño descendente en Bash?

  2. ¿Cómo obtengo el directorio absoluto de un archivo en bash?

  3. ¿Cómo uso rar para cifrar archivos, incluida la lista de archivos en la línea de comandos?

  4. ¿Qué es exactamente <() en bash (y =() en zsh)?

  5. Cómo abrir un archivo .rar en fedora 23

Cómo leer archivos línea por línea en Bash

Comando Ls en Linux (Lista de archivos y directorios)

Cómo usar el comando ftp de Linux para cargar y descargar archivos en el shell

Cómo encontrar recursivamente y enumerar los archivos por fecha en Linux

Cómo abrir archivos y carpetas como administrador en Nautilus File Manager en Linux

Cómo encontrar archivos con docenas de criterios con el comando Bash Find