了解 lsof 输出中的 TYPE
understanding TYPE in lsof output
我通过python打开了一个文件。因此,我对 python 进程执行了 lsof。 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
我在 Python 3 中尝试了相同的代码,我的文件以读取模式打开。
您确定您的文件与使用 python 和相同的 python 进程打开的文件相同吗?
也许您在以写入模式打开文件后忘记在代码中的某处关闭文件。
编辑:也在 Python 2 中尝试过,结果相同(读取模式)
我通过python打开了一个文件。因此,我对 python 进程执行了 lsof。 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
我在 Python 3 中尝试了相同的代码,我的文件以读取模式打开。
您确定您的文件与使用 python 和相同的 python 进程打开的文件相同吗? 也许您在以写入模式打开文件后忘记在代码中的某处关闭文件。
编辑:也在 Python 2 中尝试过,结果相同(读取模式)