GNU/Linux >> Belajar Linux >  >> Linux

Cara mendaftar deskriptor file terbuka (dan file yang mereka rujuk) di sesi bash saya saat ini

Ya, ini akan mencantumkan semua deskriptor file terbuka:

$ 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

Tentu saja, seperti biasa:0 adalah stdin, 1 adalah stdout dan 2 adalah stderr.
Yang keempat adalah file terbuka (untuk menulis) dalam hal ini.


Dengan asumsi Anda ingin mencantumkan deskriptor file yang dilampirkan ke terminal apa pun, Anda dapat menggunakan lsof /fuser atau serupa seperti:

$ 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

Alat-alat ini pada dasarnya mengurai /proc , jadi Anda cukup mengakses /proc/$$/fd/ juga mis.:

ls /proc/$$/fd/*

lsof -a -p $$

Hanya fd jaringan:

lsof -i -a -p $$

Linux
  1. Bagaimana Cara Mendaftar Deskriptor File Terbuka (dan File yang Mereka Rujuk) Di Sesi Bash Saat Ini?

  2. Bagaimana Mendaftar Ukuran File Rekursif Dari File Dan Direktori Di Direktori?

  3. Bagaimana cara mendaftar ukuran setiap file dan direktori dan mengurutkan berdasarkan ukuran menurun di Bash?

  1. Bagaimana cara menggunakan rar untuk mengenkripsi file termasuk daftar file di baris perintah?

  2. Apa sebenarnya <() di bash (dan =() di zsh)?

  3. Cara membuka file .rar di fedora 23

  1. Cara mengekstrak file .gz dan .tar.gz di Linux

  2. Basa'?

  3. Apakah Output Dari Perintah `tty` Dan File `/dev/tty` Keduanya Mengacu pada Terminal Pengendali Proses Bash Saat Ini?