首先使用Vim编辑一个文件,例如/tmp/A。
假设vim进程是唯一访问/tmp/A的进程,然后使用"ctrl+z“来挂起进程,然后执行
fuser /tmp/A然后你在输出中什么也看不到。
但是,如果使用" less“来打开该文件,则可以在fuser输出中看到pid值。
vim有什么特别之处吗?
发布于 2012-11-30 10:37:54
是的,除非文件需要保存,否则vim不会打开它。相反,vim使用一个临时隐藏交换文件来保存增量进行的更改。保存文件(:w)后,它将写入原始文件。
通过使用lsof,您可以看到这一点,即:
$ lsof -n -p `pidof vim`
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
[...]
vim 9695 gert 4u REG 252,1 12288 410388 /tmp/.a.swp
[...]这是编辑的常见行为。less只是读取文件,当只打开一个文件进行读取时,使用技巧是没有好处的。
https://unix.stackexchange.com/questions/57228
复制相似问题