понимание ТИПА в выводе lsof - PullRequest
0 голосов
/ 17 октября 2019

Я открыл файл через python. Итак, я сделал lsof на процессе Python. вывод lsof имеет следующую строку

COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF       NODE NAME
python  15855 inaflash    3w   REG   0,25        0 4150810088 /home/inaflash/he.txt

Дело в том, что он имеет 3w. Это означает, что файл открыт для записи. Но я фактически открыл файл следующим образом:

a = open('he.txt','r')

Я прочитал, что w означает, что файл открыт для записи. Может кто-нибудь помочь мне понять, почему это w вместо r

1 Ответ

1 голос
/ 17 октября 2019

Я попробовал тот же код в Python 3, и мой файл открывается в режиме чтения.

enter image description here

enter image description here

Вы уверены, что ваш файл одинаково открыт с python и тем же процессом python? Возможно, вы забыли закрыть файл где-то в вашем коде после того, как открыли его в режиме записи.

Редактировать: Попытка также в Python 2, тот же результат (режим чтения)

...