Bat文件运行路径错误问题

Windows批处理更改当前工作路径

1、直接双击运行bat文件,一切正常。

2、右击bat文件,选择以“管理员身份运行”,这时现象出来了,屏幕输出当前工作路径是C:/Windows/System32,也就是cmd.exe的路径,导致bat文件运行异常:系统找不到指定路径。

要解决这个问题,首先要获取当前bat文件的路径,代码如下:

set base_dir=%~dp0

%base_dir:~0,2%

这时,%base_dir%已经存储了当前bat文件的绝对路径了,接下来就是要将运行时的当前工作路径更换为%base_dir%就行了,代码如下:

pushd %base_dir%

notepad test.txt

popd

这样修改之后bat的总体代码如下:

@echo off

color 0a

set base_dir=%~dp0

%base_dir:~0,2%

pushd %base_dir%

//notepad test.txt //bat批处理

popd

pause

修改之后,无论是双击直接运行,还是右击选择“以管理员身份运行”,结果都会是一样的。

系统定时任务在运行批处理文件时,当前的工作路径都会是C:/Windows/System32,因此,都得用这种方法改变一下当前工作路径。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
当遇到.bat文件不能运行.reg文件问题时,可以尝试以下解决方法: 1. 检查.bat文件语法:检查.bat文件是否有语法错误,确保其中的命令语句正确无误。 2. 检查.reg文件格式:确认.reg文件的格式是否正确,可以使用文本编辑器打开.reg文件,检查语法和内容是否符合规范。 3. 查看注册表编辑器权限:运行.reg文件需要管理员权限,检查当前用户是否具有足够的权限。可以尝试右键点击.bat文件,选择“以管理员身份运行”,然后再尝试运行.reg文件。 4. 检查防病毒软件:某些防病毒软件可能会阻止运行.reg文件,可能会将其识别为潜在的恶意文件。可以尝试临时关闭防病毒软件,然后再运行.bat文件并执行.reg文件。 5. 修改注册表编辑器设置:打开注册表编辑器,导航到“HKEY_CLASSES_ROOT\batfile\shell\open\command”路径下,确认默认值为"%1" %*,如果不是,可以进行修改。 6. 重新注册.bat文件关联:打开命令提示符窗口,输入“assoc .bat=batfile”命令,然后按下回车键。接着输入“ftype batfile=%1 %*”,再按下回车键。这样可以重新注册.bat文件关联,解决不能运行.reg文件问题。 7. 更新系统和应用程序:如果遇到该问题,检查是否有系统更新或相关应用程序的更新,下载并安装最新版本可能可以解决问题。 如果以上方法都未能解决该问题,可以尝试在技术论坛或者向专业人士寻求帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值