# 关于Windows使用netsh发生“系统找不到指定的文件”的处理

> 作者：zning（https://ning.ae） · 发布：2018/10/30 10:46 上午 (UTC+8) · 原文：https://zning.me/15408675951015.html

> 注意：本文首次撰写于2018-10-30，最近修改时间为2018-10-30，请注意相关程序的可用性与安全性。

今天需要删除之前通过netsh命令增加的端口转发，从网上搜到如下命令执行：

```powershell
netsh interface portproxy delete v4tov4 listenport=80
```

但是系统一直在提示“系统找不到指定的文件”

最后解决方法是，在命令之后增加`listenaddress`参数。

```powershell
netsh interface portproxy delete v4tov4 listenport=80 listenaddress=192.168.131.140
```

推测原因，通过命令查询发现80端口有两个转发记录：

```powershell
PS C:\Users\Administrator> netsh interface portproxy show all

侦听 ipv4:                 连接到 ipv4:

地址            端口        地址            端口
--------------- ----------  --------------- ----------
192.168.131.140  80          192.168.131.140  8989
192.168.131.150  80          192.168.131.150  8080
```

而这两个转发的源ip是不同的，可能执行网上搜到的命令时，系统无法识别删除的是哪一条命令，因此报错。
