python - 使用Python查询连接到Windows的USB设备

标签 python windows cmd

对于 C#、C++、python、ubuntu 等有很多答案,但这对于 Windows 和 python 来说是首选(或者简单地通过 python 调用子进程)

我的代码可以在 Ubuntu 上运行,但现在我想切换到 Windows:

rpistr = "ls /media/pi > usbs.txt"
p=subprocess.Popen(rpistr,shell=True, preexec_fn=os.setsid)
array = []
with open("usbs.txt", "r") as f:
    for line in f:
        array.append(line.strip())

我想检查连接的端口,并列出 USB 的目录。

例如,假设我有 C:\D:\,但现在我插入一个新的 USB,它将是 F:\ 为例 - 我想知道路径 F:\ 现在对我可用并且能够复制文件。

典型流程:

  • 获取所有位置
  • 发现新位置 F:\ 可用
  • 使用复制文件 shutil.copy2

那么我如何识别哪个端口(?)刚刚插入FGH等?我计划无限循环地运行它,这就是为什么我需要确定新 USB 插入的时间和位置。

最佳答案

没有意识到他们被称为驱动器,弄清楚并找到了正确的答案。

您可以简单地使用:

import win32com.client

drives = win32api.GetLogicalDriveStrings()
drives = drives.split('\000')[:-1]
print(drives)

它会输出这样的答案:

['C:\\', 'D:\\', 'E:\\', 'F:\\']

只需调用 drives[x]x 是一个索引,就会将示例驱动器返回为 X:\,它与shutil

关于python - 使用Python查询连接到Windows的USB设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56690568/

相关文章:

Python 和数组

过滤具有重叠日期的数据的 Pythonic 方法

python - 从实例访问类变量

batch-file - 使用批处理文件将本地 IP 地址写入文本文件

python - 如何在 python 2.7 上安装 python pip

windows - 我可以在同一个客户端的同一个端口上与同一个服务器建立 1 个以上的 TCP 连接吗?具体到445端口

java - 为多个平台开发

windows - 用于 Windows 的 PDF 文件

xml - Windows 批处理 : Read a very long line from unformatted xml

configuration - 使用代码或脚本(查询)启用到 sql server express 已安装数据库的 tcp\ip 远程连接