微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检查文件是否用lsof打开

我正在使用linux mint 13 xfce,我有一个名为wv.gold的文件,我试图在bash中检查它是否被任何程序打开(例如,我用sublime-text和gedit打开它)

在很多论坛上人们都说如果我运行lsof | grep filename lsof | grep filename我应该得到0如果它打开或256(1)如果它是封闭的,但事实上,我什么都没有(空string)如果我运行使用grep "wv.gold" ,并得到一个小列表,如果我用grep gold 。

清单是这样的:

bash 2045 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir bash 2082 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir watch 4463 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir gedit 16679 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir lsof 20823 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir grep 20824 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir lsof 20825 user cwd DIR 8,1 4096 658031 /home/user/path/to/dir

因此,我得到的path是它的目录,但不是文件的path(那里有其他文件),只有gedit进程,而不是sublime-text过程。

用C ++在线文本文件读取数据

在Windows中redirect所有文件IO

由于GetDetailsOf列编号在操作系统版本之间发生变化,是否有正确的方法获取窗口中的文件细节?

PHP is_writeable或由另一个程序打开?

以编程方式确定video文件格式?

有没有一些简单的方法来查看是否有任何其他程序打开一个txt文件

编辑 :事实certificate(比较@mata和@ctn的评论),一些编辑器加载文件,并立即closures它们,并保存时,他们只是重新打开文件。 这样,我们只能在他们还在打开一个文件时才能看到它(因为你有时间在打开的时候观察它),之后就会立即消失。

在C中对文件进行sorting

为什么这个batch file会产生额外的,意外的,不需要的字符?

使用read(…)时停在换行符上

在C ++中将一个文件内容复制到另一个文件

我应该写一个临时文件临时目录吗? 或者写一个临时文件到最终目录?

出现在lsof输出中的行是打开的文件。 如果您的文件不在那里意味着它不是开放的。 这些列中有PID(打开文件的程序的进程ID)和FD(与打开文件关联的文件描述符)。 这些没有特定的值表示打开/关闭。 如果它完全出现,意味着它是开放的。

查看http://linux.die.net/man/8/lsof并搜索contains the first nine characters的文本

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐