如何查看串行COM端口,但不能通过设备管理器查看


39

在不使用设备管理器的情况下,如何查看正在使用的COM端口列表?

我也不想安装任何软件。有没有可能通过命令行执行此操作?


请更好地定义“使用中”。作为设备安装?是否已连接设备?是否正在积极传输数据?
Ƭᴇcʜιᴇ007

@Ƭᴇcʜιᴇ007抱歉,正在使用中的设备已连接到该设备。我将ttl uart电缆插入USB。
Marmstrong 2014年

我想您可以通过Powershell脚本执行此操作。为什么不能使用设备管理器?您不愿意使用腻子之类的东西很奇怪。
Ramhound

1
@Ramhound使用大学PC锁定了设备管理器,以阻止像我这样的人摆弄。我可以在笔记本电脑上看到该设备是COM3。我想使用腻子,但不知道要使用哪个COM端口。
Marmstrong 2014年

2
@Marmstrong在命令提示符下使用mode。不带参数使用时,mode显示CON(控制台)和可用COM设备(LPT以及)的所有可控制属性
JosefZ 2014年

Answers:


53

在命令提示符下使用

mode

不带参数使用时,mode显示CON(控制台)和可用COM设备(LPT以及)的所有可控制属性。

接受/?切换以获取基本帮助:

mode /?


mode大部分的时间我没有看到在@GM的答复中提到的未连接,设备。
sylvainulg

11

在命令提示符下使用:

C:\>wmic path Win32_SerialPort

要么

在PowerShell中:

PS> Get-WMIObject Win32_SerialPort

要么

PS> Get-WMIObject Win32_SerialPort | Select-Object Name,DeviceID,Description

希望这可以帮助。


2
命令提示符返回No Instance(s) Available.
Marmstrong 2014年

如果没有Com端口设备检测到,则命令结果为“无可用实例”。检查“设备管理器”,并确保您的计算机检测到“设备管理器”中的Com端口
vembutech 2014年

OP说“使用锁定了设备管理器的大学PC”
DavidPostill

@vembutech-在这种情况下,您似乎需要让IT介入。
Ramhound 2014年

@vembutech我已经在自己的笔记本电脑上检查了该设备,并且在设备管理器中显示为COM3,但命令提示符仍显示相同的结果。
Marmstrong 2014年

10

我知道问题已经回答,但这是另一种方法。

在命令提示符下,
chgport
在Windows Vista及更高版本中使用:。列出您的端口及其所在的设备。


1
Windows 7“'chgport'未被识别为内部或外部命令,可操作程序或批处理文件”。
DavidPostill

4
在Win 7上为我工作
woky

chgport / QUERY在Win7 pro中对我有效。它列出了当前选择的COM端口的\ Device \ name,而不是完整列表。chgport更有趣吗?显示:(格式化失败)CHANGE PORT [portx = porty | / D portx | / QUERY] portx = porty将端口x映射到端口y。/ D portx删除端口x的映射。/ QUERY显示当前映射端口。chgport COM4 = COM5允许COM4:起作用!
詹姆斯·牛顿,


1
chgport也可在Windows 10中使用
Spikey_richie

3

mode大多数情况下,我看不到未连接的设备。

我更喜欢将此解决方案与Python配合使用:

python -c "import serial.tools.list_ports as ls;print list(ls.comports())"

因此,即使连接已关闭,我也可以看到任何东西插入。

serial.tools.list_ports来自pyserial软件包。


3

wmic https://docs.microsoft.com/zh-cn/windows/desktop/wmisdk/wmic是Windows命令行实用程序,用于获取系统信息。

如果您的串行端口是由某些驱动程序通过USB连接虚拟创建的,请使用此示例获取有关这些串行端口的详细信息。

wmic路径CIM_LogicalDevice,其中“像'USB Serial%'这样的描述”获得/值

进一步的信息会有所帮助
Albin

产生大量信息。get Name而不是get /value可能会有所帮助。不幸的是,它不会简单列出端口,而是列出诸如“ USB Serial Port(COM17)”之类的字符串。在我的设置中,还有多个条目仅提及“ USB Serial Converter”。
sylvainulg


0

下面的代码片段将串行端口列出到$ PORTS变量中

BASH MSYS2

此功能将自动获取端口列表

端口=/c/Windows/System32/mode.com | grep Status.*COM | awk '{ print $4 }' | sed s/://

要列出(使用)端口,请参见以下代码:

echo -n“编程(回显)端口:” for $ PORTS中的aa;做echo -n $ aa做echo“”

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.