Bos*_*wow 4 linux usb rename pen python-idle
我有一个简单的问题,但找不到答案。是否可以在Linux(或Python)中查看外部USB笔驱动器是否空闲?我需要知道我正在编写的 python 脚本的这一点。我需要在没有任何内容写入外部 USB 笔驱动器上的文件夹后立即重命名该文件夹。
编辑:我知道有 lsof 命令可以列出打开的文件。'lsof /theDir' 只起作用一半。当复制到 USB 的进程仍在运行时,它可以正常工作。但是当进程停止时,lsof 什么也不显示。但操作系统仍在从其缓冲区写入 USB。
您可以通过查看 来检查是否所有 I/O 均已处理/sys/block/<dev>/stat。第九列包含当前正在运行的 I/O 数量。检查https://www.kernel.org/doc/Documentation/block/stat.txt
一旦该数字为零,设备应该处于空闲状态。
要强制立即写入所有缓冲区,您可以执行sync并等待它返回。
不过请注意,如果您不控制写入,那么这里会出现竞争条件 - 在您确定设备空闲后,其他进程可能会开始写入它。