找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5340|回复: 28

[求助] NET,CMD等命令调用时提示找不到文件,只能在SYSTEM32文件夹下才能运行

[复制链接]
发表于 2023-10-28 19:27:52 | 显示全部楼层 |阅读模式
本人有些批处理,然后里面会用到NET,调用到CMD等命令之前在任意目录下,都可以直接正常运行
然后今天在有台电脑上,发现调用到CMD,NET等命令时,提示找不到文件之类的提示,然后必须在SYSTEM32文件夹下面才可以正常运行

然后尝试搜索了一下,有些回答是说环境变量的问题,但是我看了下,也没看到什么异常的地方,
请教各位㚐,问题是出在哪里呢?
发表于 2023-10-28 19:57:11 | 显示全部楼层
那就加上:
cd /d C:\Windows\System32

点评

ut0
这样是可以的,但是我想知道出问题的具体原因并解决  详情 回复 发表于 2023-10-29 10:42
回复

使用道具 举报

发表于 2023-10-28 19:57:35 | 显示全部楼层
为毛不把批处理发上来???

点评

ut0
现在发上来了  详情 回复 发表于 2023-10-29 11:01
回复

使用道具 举报

发表于 2023-10-28 20:43:39 | 显示全部楼层
这台电脑的环境变量“path”被改乱了呗,变量值中的C:\Windows和C:\Windows\system32都没有了
打开命令提示符窗口执行set path就能看到了

点评

ut0
但奇怪的是,变量里有这些,所以我说没看到什么异常的地方  详情 回复 发表于 2023-10-29 10:44
是这样的。  详情 回复 发表于 2023-10-28 21:01
回复

使用道具 举报

发表于 2023-10-28 21:01:21 | 显示全部楼层
本帖最后由 blank007 于 2023-10-28 21:02 编辑
hua_wuxin 发表于 2023-10-28 20:43
这台电脑的环境变量“path”被改乱了呗,变量值中的C:\Windows和C:\Windows\system32都没有了
打开命令提 ...

是这样的。我曾乱改 path 环境变量,结果有些程序不能运行了。改回来之后就正常了。
回复

使用道具 举报

发表于 2023-10-28 22:32:43 | 显示全部楼层
在环境变量中,加入system32目录

点评

ut0
变量里是有的  详情 回复 发表于 2023-10-29 10:45
回复

使用道具 举报

发表于 2023-10-28 22:42:00 | 显示全部楼层
C:\Windows\System32
添加到环境里面!
2023-10-28_22-41-41.png

点评

ut0
变量里有这些  详情 回复 发表于 2023-10-29 10:46
回复

使用道具 举报

发表于 2023-10-28 22:43:35 | 显示全部楼层
在前面加一句试试,如果正常,那就是path变量异常
  1. path %path%;C:\Windows;C:\Windows\System32
复制代码

点评

ut0
加了之后是运行正常了,是变量异常,但奇怪的是变量里面有SYSTEM32  详情 回复 发表于 2023-10-29 10:47
回复

使用道具 举报

发表于 2023-10-28 23:15:28 | 显示全部楼层
加上:cd /d C:\Windows\System32
回复

使用道具 举报

 楼主| 发表于 2023-10-29 10:42:56 | 显示全部楼层
yyz2191958 发表于 2023-10-28 19:57
那就加上:
cd /d C:\Windows\System32

这样是可以的,但是我想知道出问题的具体原因并解决
回复

使用道具 举报

 楼主| 发表于 2023-10-29 10:44:43 | 显示全部楼层
hua_wuxin 发表于 2023-10-28 20:43
这台电脑的环境变量“path”被改乱了呗,变量值中的C:\Windows和C:\Windows\system32都没有了
打开命令提 ...

但奇怪的是,变量里有这些,所以我说没看到什么异常的地方
回复

使用道具 举报

 楼主| 发表于 2023-10-29 10:45:47 | 显示全部楼层
l3429900 发表于 2023-10-28 22:32
在环境变量中,加入system32目录

变量里是有的
回复

使用道具 举报

 楼主| 发表于 2023-10-29 10:46:27 | 显示全部楼层
fulibo 发表于 2023-10-28 22:42
C:\Windows\System32
添加到环境里面!

变量里有这些
回复

使用道具 举报

 楼主| 发表于 2023-10-29 10:47:26 | 显示全部楼层
nttwqz 发表于 2023-10-28 22:43
在前面加一句试试,如果正常,那就是path变量异常

加了之后是运行正常了,是变量异常,但奇怪的是变量里面有SYSTEM32

点评

加了之后正常说明批处理的实际运行环境里缺这些 这个环境中的变量值跟自己打开的命令提示符窗口中的不一致 你在批处理最前面加上set和pause后在那台电脑上运行看看path变量呢?  详情 回复 发表于 2023-10-29 12:07
回复

使用道具 举报

 楼主| 发表于 2023-10-29 11:01:36 | 显示全部楼层
本帖最后由 ut0 于 2023-10-29 16:00 编辑

就是变量里有systemroot,system32等设置,还是提示错误,所以觉得很奇怪,也找不到问题出在哪里

path.png

path2.png

运行set path和set之后,显示的是这些
  1. C:\WINDOWS\system32>set path
  2. Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%SYSTEMROOT%\System32\OpenSSH\;C:\Program Files (x86)\Common Files\THSOFT Shared;C:\Users\DELL\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Common Files\THSOFT Shared
  3. PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

  4. C:\WINDOWS\system32>set
  5. ADSK_CLM_WPAD_PROXY_CHECK=FALSE
  6. ALLUSERSPROFILE=C:\ProgramData
  7. APPDATA=C:\Users\DELL\AppData\Roaming
  8. CommonProgramFiles=C:\Program Files\Common Files
  9. CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
  10. CommonProgramW6432=C:\Program Files\Common Files
  11. COMPUTERNAME=DELL-PC2
  12. ComSpec=C:\WINDOWS\system32\cmd.exe
  13. DriverData=C:\Windows\System32\Drivers\DriverData
  14. HOMEDRIVE=C:
  15. HOMEPATH=\Users\DELL
  16. LOCALAPPDATA=C:\Users\DELL\AppData\Local
  17. LOGONSERVER=\\DELL-PC2
  18. NUMBER_OF_PROCESSORS=12
  19. OS=Windows_NT
  20. Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%SYSTEMROOT%\System32\OpenSSH\;C:\Program Files (x86)\Common Files\THSOFT Shared;C:\Users\DELL\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Common Files\THSOFT Shared
  21. PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
  22. PROCESSOR_ARCHITECTURE=AMD64
  23. PROCESSOR_IDENTIFIER=AMD64 Family 25 Model 80 Stepping 0, AuthenticAMD
  24. PROCESSOR_LEVEL=25
  25. PROCESSOR_REVISION=5000
  26. ProgramData=C:\ProgramData
  27. ProgramFiles=C:\Program Files
  28. ProgramFiles(x86)=C:\Program Files (x86)
  29. ProgramW6432=C:\Program Files
  30. PROMPT=$P$G
  31. PSModulePath=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
  32. PUBLIC=C:\Users\Public
  33. SESSIONNAME=Console
  34. SystemDrive=C:
  35. SystemRoot=C:\WINDOWS
  36. TEMP=C:\Users\DELL\AppData\Local\Temp
  37. TMP=C:\Users\DELL\AppData\Local\Temp
  38. USERDOMAIN=DELL-PC2
  39. USERDOMAIN_ROAMINGPROFILE=DELL-PC2
  40. USERNAME=DELL
  41. USERPROFILE=C:\Users\DELL
  42. windir=C:\WINDOWS
复制代码



回复

使用道具 举报

 楼主| 发表于 2023-10-29 11:01:51 | 显示全部楼层
本帖最后由 ut0 于 2023-10-29 11:08 编辑
邪恶海盗 发表于 2023-10-28 19:57
为毛不把批处理发上来???

现在发上来了
path.png
path2.png
回复

使用道具 举报

发表于 2023-10-29 12:07:02 | 显示全部楼层
ut0 发表于 2023-10-29 10:47
加了之后是运行正常了,是变量异常,但奇怪的是变量里面有SYSTEM32

加了之后正常说明批处理的实际运行环境里缺这些 这个环境中的变量值跟自己打开的命令提示符窗口中的不一致
你在批处理最前面加上set和pause后在那台电脑上运行看看path变量呢?

点评

ut0
是的,但问题是为什么批处理中变量和系统的变量不一致,而且系统变量里看起来都是正常的 加了set和pause之后是这样显示的,中间也显示是有%systemroot\system32%的,但还是报错 [attachimg]533888[/attachimg]  详情 回复 发表于 2023-10-29 16:06
回复

使用道具 举报

发表于 2023-10-29 13:21:28 | 显示全部楼层
学习学习
回复

使用道具 举报

 楼主| 发表于 2023-10-29 16:06:03 | 显示全部楼层
hua_wuxin 发表于 2023-10-29 12:07
加了之后正常说明批处理的实际运行环境里缺这些 这个环境中的变量值跟自己打开的命令提示符窗口中的不一 ...

是的,但问题是为什么批处理中变量和系统的变量不一致,而且系统变量里看起来都是正常的

加了set和pause之后是这样显示的,中间也显示是有%systemroot\system32%的,但还是报错

path3.png
回复

使用道具 举报

发表于 2023-10-29 16:46:50 | 显示全部楼层
本帖最后由 hua_wuxin 于 2023-10-29 18:06 编辑

你检查下注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下Path环境变量的类型。系统初始类型应该是REG_EXPAND_SZ,但是好像有什么东西(某个常见软件的安装程序?)会把它改成REG_SZ。如果被改成了REG_SZ,那么数据里就不能用%SystemRoot%,而必须直写为C:\Windows。或者把它删掉重建为REG_EXPAND_SZ也行。

2023-10-29_163937.png

点评

原来是注册表类型问题,涨姿势了。 不知,删除path变量再重建是否能恢复正常。  详情 回复 发表于 2023-10-29 18:47
ut0
非常感谢回复和指点,我这下看到了,正常的环境变量下,path在命令行里的显示,不应该还是显示的变量,应该是显示的具体路径了。 但注册表的问题也没法查看了,因为电脑已经被人拿走了  详情 回复 发表于 2023-10-29 18:17
回复

使用道具 举报

 楼主| 发表于 2023-10-29 18:17:18 | 显示全部楼层
hua_wuxin 发表于 2023-10-29 16:46
你检查下注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下Path ...

非常感谢回复和指点,我这下看到了,正常的环境变量下,path在命令行里的显示,不应该还是显示的变量,应该是显示的具体路径了。

但注册表的问题也没法查看了,因为电脑已经被人拿走了
回复

使用道具 举报

发表于 2023-10-29 18:47:22 来自手机 | 显示全部楼层
hua_wuxin 发表于 2023-10-29 16:46
你检查下注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下Path ...

原来是注册表类型问题,涨姿势了。
不知,删除path变量再重建是否能恢复正常。
回复

使用道具 举报

发表于 2023-12-8 11:02:33 | 显示全部楼层
我感觉就是环境变量的问题
回复

使用道具 举报

发表于 2024-2-17 10:35:31 | 显示全部楼层
学习学习
回复

使用道具 举报

发表于 2024-2-17 10:46:26 | 显示全部楼层
回复

使用道具 举报

发表于 2024-2-17 17:21:26 | 显示全部楼层
加上:cd /d C:\Windows\System32
回复

使用道具 举报

发表于 2024-2-17 18:24:18 | 显示全部楼层
这个我清楚,是装了清华天河后,自动添加的路径有问题

清华天河的路径是带有空格的,这样的路径必须要用双引号括起来,然而清华天河软件并没有考虑到这个问题,只是机械地把自己的带空格路径加到path变量中,从而导致了整个path环境变量的失效

解决这个问题的方法就是把path变量中的所有带空格的路径两边加上双引号(半角英文)
回复

使用道具 举报

发表于 2024-4-14 15:35:52 来自手机 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2024-4-21 14:43:22 | 显示全部楼层
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-5-17 07:43

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表