我试图在Windows中运行以下命令:
ping -n 5 127.0.0.1 > nul
我得到的错误:
'ping' is not recognized as an internal or external command operable
program or batch fie.
为什么无法在Windows找到平安? 这里是我的脚本,它不工作:
@ECHO OFF
::set path
SET path=M:\\5.bmp
:findfile
IF EXIST %path% (
ECHO File found
) ELSE (
ECHO File not found
ping -n 5 127.0.0.1 > nul
goto findfile
)
你已经覆盖了PATH
环境变量,因此命令处理器不能再找到ping
可执行文件。
解决方法是好的和简单 - 只需使用一个不同的变量名!
:: set path
SET MyPath=M:\\5.bmp
:findfile
IF EXIST %MyPath% (
请注意,如果你真的想设置path
环境变量,你应该追加到它像这样:
REM Set temporarily for this session
SET PATH=%PATH%;C:\Some\Folder
REM Set permanently (but note - this change will not be made to this session)
SETX PATH=%PATH%;C:\Some\Folder
喜来修复“平”,请按照以下步骤
进入属性在我的电脑
高级系统设置----->高级----->环境从系统变量和编辑的列表中选择变量“PATH”,并设置路径为C:\ Windows \ System32下; 这将解决您的问题。
----->如果还是u有一个问题,做下面的步骤...
控制面板 - >系统和安全 - > Windows防火墙 - >高级设置 - >入站规则 - >新建规则 - >自定义规则
在协议和端口:协议:ICMPv4同一面板上的去定制,选择“特定ICMP类型”,勾选“回显请求”
其余的是微不足道的; 进入下一步...下一步...并保存它。
你应该做的。 这个盒子从这点上响应平。
干杯
普拉萨德
如何诊断此错误:
'ping' is not recognized as an internal or external command operable
program or batch fie.
因为你的path
环境变量不包含指向可执行文件的目录: ping.exe
。 于是,问题就变成,为什么不能在您的命令行程序cmd.exe
定位ping.exe
?
你可以在这样的命令行打印出你的路径变量:
echo %PATH%
它打印对我来说:
C:\WINDOWS;C:\WINDOWS\system32;C:\Program Files\jZip;C:\MinGW\bin
上述字符串由分号分隔( ;
)。 注意称为元素: C:\WINDOWS\System32
,即用于定义PING.EXE可位于元件。
解决方案
- 在你的路径变量\ WINDOWS \ System32下:你没有指定C。 确保它的存在。
- ping.exe的缺失。 找出谁删除了它,并把它放回去。
- ping.exe的损坏。 运行它,它位于:
C:\WINDOWS\System32\ping.exe
,或更换ping.exe
。 - 你已经覆盖了PATH变量,你看它之前。
文章来源: Windows Batch error: “'ping' is not recognized as an internal or external command operable program or batch file.”