Windows cmd中,默认的搜索路径顺序 cmd合并命令 查找并关闭占用端口的程序

在Windows cmd中,默认的搜索路径顺序如下:

  1. 当前目录(.)
  2. 父目录(…)
  3. 系统环境变量PATH中定义的目录列表 (C:/windows/下的adb优先级高于path里 ???。adb版本又不一致导致的)

当在cmd中输入一个命令时,系统会按照上述顺序查找可执行文件。如果在某个目录中找到了可执行文件,就会停止搜索并执行该文件。

端口被占用

这个错误通常是因为ADB(Android Debug Bridge)无法在本地主机的5037端口上启动监听器,原因是该端口已被其他应用占用。错误代码10048是一个Windows系统的错误代码,表示地址已在使用中(即端口被占用)。

解决这个问题的方法有几种:

  1. 查找并关闭占用端口的程序
    使用命令行工具来查看哪个程序占用了5037端口。可以使用以下命令:

    netstat -aon | findstr 5037
    

    这将列出所有使用5037端口的进程。记下输出中的PID(进程ID),然后使用任务管理器或taskkill命令来结束这些进程。例如,如果进程ID是1234,可以使用以下命令:

    taskkill /F /PID 1234
    
  2. 更改ADB的默认端口
    如果你不能或不想关闭占用端口的程序,可以尝试更改ADB的默认端口。首先,需要关闭当前运行的ADB服务器,然后在另一个端口上启动它。可以使用以下命令:

    adb kill-server
    adb -P 5038 start-server
    

    这里将ADB的端口从默认的5037更改为5038。

  3. 检查防火墙和安全软件设置
    有时,防火墙或安全软件可能会阻止ADB正常工作。确保ADB的通信端口(默认是5037)在防火墙中被允许,或尝试暂时禁用防火墙和安全软件,看看问题是否解决。

  4. 重启计算机
    如果上述方法都不奏效,尝试重启计算机。有时,这可以解决端口冲突的问题。

如果问题仍然存在,可能需要进一步检查系统设置或考虑是否有其他软件冲突问题。

合并为一条命令

查找占用端口的进程  和 结束这个进程 for /f "tokens=5" %a in ('netstat -aon ^| findstr :5037') do taskkill /F /PID %a

在Windows命令提示符(cmd)中,您可以使用netstat命令来查找哪个进程占用了特定的端口,然后使用taskkill命令来结束该进程。但是,要将这两个操作合并为一条命令,您可以使用管道(|)和findstr命令来过滤输出,再配合for循环来处理每个匹配项。

以下是一个示例命令,它将查找占用特定端口(例如,8080端口)的进程,并结束该进程。请注意,这需要在具有管理员权限的命令提示符下运行。

for /f "tokens=5" %a in ('netstat -aon ^| findstr :8080') do taskkill /F /PID %a

这条命令的工作原理如下:

  • netstat -aon:列出所有连接和监听端口以及相应的进程ID。
  • ^| findstr :8080:使用findstr命令查找包含“:8080”的行。这里的^是转义字符,用于在命令提示符中表示|
  • for /f "tokens=5" %a in ('...') do ...:对netstatfindstr命令的输出进行循环,每行的第5个元素(默认以空格为分隔符)是进程ID。
  • taskkill /F /PID %a:对每个找到的进程ID执行强制结束进程的操作。

请确保将8080替换为您想要查询和结束进程的实际端口号。此外,如果您在批处理文件中使用此命令,需要将%a替换为%%a

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黄人软件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值