写bat文件,报系统找不到指定文件的处理方式

昨天,为了一个项目的数据初始化问题,需要在新系统的MySQL库中加入新的库,新的数据。借鉴了网络上各位大神的方法。实现如下:

@ECHO OFF

SET dbhost=127.0.0.1
SET dbuser=root
SET dbpasswd=123456
SET sqlpath=%~dp0
set sqlfile=20211014.sql
cd /d C:\Program Files\MySQL\MySQL Server 5.7\bin
ECHO Writing Data,Please Waiting ...
mysql -h%dbhost% -u%dbuser% -p%dbpasswd% < %sqlpath%%sqlfile% --default-character-set=utf8

@ECHO Done!

但是这个在创建该文件的目录可用,在实际应用的目录却一直报 “系统找不到指定的文件”。

经过关进程、重启机器等等方式,都是一样的问题,没有发生任何变化。

在没有办法的时候,突然想到之前在工作中遇到的问题,关于路径空格的问题。我就又仔细比对了一下两个bat运行的路径,发现我目的路径中,文件夹存在空格。所以就将路径改为

mysql -h%dbhost% -u%dbuser% -p%dbpasswd% < "%sqlpath%%sqlfile%" --default-character-set=utf8

之后就可以找到相应的文件了。

还有一个问题就是在mysql语句中存在密码的问题,会有异常提示显示。看到网上的各种办法,解决的方式也较麻烦,还好它仅仅是个提示,功能还是在正常实现。也就没有对其处理。

参考:.bat批处理数据库导入sql文件,“系统找不到指定文件”问题_隐居的山贼-CSDN博客

批处理(.bat)文件中找不到文件等路径问题_feiyu68的博客-CSDN博客

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值