GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So listen Sie die offenen Dateideskriptoren (und die Dateien, auf die sie sich beziehen) in meiner aktuellen Bash-Sitzung auf

Ja, dies listet alle offenen Dateideskriptoren auf:

$ 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

Natürlich wie immer:0 ist stdin, 1 ist stdout und 2 ist stderr.
Die vierte ist in diesem Fall eine offene Datei (zum Schreiben).


Angenommen, Sie möchten die Dateideskriptoren auflisten, die an ein beliebiges Terminal angehängt sind, können Sie lsof verwenden /fuser oder ähnlich wie:

$ 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

Diese Tools parsen im Wesentlichen /proc , sodass Sie einfach auf /proc/$$/fd/ zugreifen können auch z.B.:

ls /proc/$$/fd/*

lsof -a -p $$

Nur Netzwerk fd:

lsof -i -a -p $$

Linux
  1. So extrahieren Sie .gz- und .tar.gz-Dateien unter Linux

  2. Die Bash‘?

  3. Verweisen die Ausgabe des Befehls „tty“ und die Datei „/dev/tty“ beide auf das steuernde Terminal des aktuellen Bash-Prozesses?

  4. Wie kann man Bash Autocomplete anpassen, um die Dateien in einem anderen Verzeichnis aufzulisten?

  5. Wie listet man rekursive Dateigrößen von Dateien und Verzeichnissen in einem Verzeichnis auf?

So lesen Sie Dateien Zeile für Zeile in Bash

Ls-Befehl in Linux (Dateien und Verzeichnisse auflisten)

So verwenden Sie den Linux-Befehl ftp zum Hoch- und Herunterladen von Dateien auf der Shell

So finden und listen Sie die Dateien rekursiv nach Datum in Linux auf

So öffnen Sie Dateien und Ordner als Administrator im Nautilus-Dateimanager unter Linux

So finden Sie Dateien mit Dutzenden von Kriterien mit dem Bash-Suchbefehl