2009-08-27 3 views
3

Я сделал команды (source):Как видеть дескрипторы файлов как с "lsof -l"?

$ exec 3>/tmp/thirdfile 
$ exec 4>/tmp/fourthfile 
$ echo drib >&3 
$ echo drab >&4 
$ echo another drib >&3 
$ echo another drab >&4 
$ exec 3>&- 
$ exec 4>&- 

Как я могу увидеть файл ручками, что-то вроде с lsof -l?

+0

Рассматривали ли вы * чтение источника * lsof для интересующей вас системы? Достаточно мало коммерчески доступных unixes с закрытым исходным кодом, которые вы должны сообщить нам, если это так. – dmckee

ответ

7

Я не понимаю, почему бы не просто использовать Lsof:

lsof -p $$ 

$$ является переменной оболочки, которая содержит командного процессора идентификатор процесса

Вы также можете ограничить только файл дескрипторы, как:

lsof -a -d0-65535 -p $$ 
4

В Linux вы можете сделать что-то вроде ls -l /proc/$$/fd, которое покажет вам, какие файловые дескрипторы открыты в вашей оболочке.

Конечно, замените $$ другими номерами, чтобы проверить другие процессы (по крайней мере, те, которые у вас есть).