标题: [其他] 批处理中含中文路劲无法运行,怎么解决? [打印本页]
作者: 草青青2020 时间: 2020-5-26 10:21 标题: 批处理中含中文路劲无法运行,怎么解决?
如题,因涉及到异地备份,小弟采用robocpy命令执行,在执行中发现一些问题?
如:
1:robocopy命令中的源文件(目录)必须是共享名,而这共享名又是中文名的。问题就来了:
将中文名添加到BAT文件中,一保存就是乱码,运行报错:找不到目标!
尝试将该bat文件保存为非ansi编码,每个都试了,还是bat没执行!
尝试将关键语句复制到CMD下执行是正常的!
请问,这个是怎么回事?该怎么改进?十分感谢!
作者: Batcher 时间: 2020-5-26 10:35
回复 1# 草青青2020
请把你的bat文件打包压缩传上来看看
作者: 草青青2020 时间: 2020-5-26 11:41
就一条最重要语句:
robocopy //10.*.*.*/公司标准 /S D:\\pmgbak\oabak /E /B /COPYALL /MT:96 /R:3 /W:3 /MIR
作者: smss 时间: 2020-5-26 11:48
含中文需要保存为ansi编码 否则乱码
作者: 草青青2020 时间: 2020-5-26 16:14
回复 4# smss
保存为ansi编码后,该批处理不运行啊!
复制保存后bat,在dos下运行提示找不到目录!
只有保存为为非ansi编码后,复制该语句在dos下运行是正常的!
但直接运行这bat文件会一闪而过,没有效果!
作者: 草青青2020 时间: 2020-5-26 16:15
回复 2# Batcher
就一条最重要语句:
robocopy //10.*.*.*/公司标准 /S D:\\pmgbak\oabak /E /B /COPYALL /MT:96 /R:3 /W:3 /MIR
作者: flashercs 时间: 2020-5-26 17:09
- robocopy "\\10.1.2.3\公司标准" "D:\\pmgbak\oabak" /B /MIR /COPYALL /MT:96 /R:3 /W:3
复制代码
作者: Batcher 时间: 2020-5-26 17:23
回复 5# 草青青2020
请把你的ANSI编码的bat文件和非ANSI编码的bat文件打包压缩传上来我试试
作者: smss 时间: 2020-5-26 19:14
我都乱试的- robocopy "\10.*.*.*\公司标准" "D:\pmgbak\oabak" /S/E/B/COPYALL /MT:96 /R:3 /W:3 /MIR
复制代码
作者: a20150604 时间: 2020-5-26 19:23
BAT 文件保存为 ANSI 编码, 并配合 936 代码页
复制代码
或者 保存为 UTF-8 无 BOM 编码, 配合 65001 代码页
复制代码
作者: 草青青2020 时间: 2020-5-26 20:26
回复 7# flashercs
感谢回复,一保存为ANSI就是乱码,保存为其它格式,BAT运行一闪而过!
作者: 草青青2020 时间: 2020-5-26 20:27
回复 9# smss
感谢回复,一保存为ANSI就是乱码,保存为其它格式,BAT运行一闪而过!
作者: 草青青2020 时间: 2020-5-26 20:28
回复 10# a20150604
能详细点吗,我纯小白一枚!
谢谢!
作者: smss 时间: 2020-5-26 20:49
- chcp 936
- robocopy //10.*.*.*/公司标准 /S D:\\pmgbak\oabak /E /B /COPYALL /MT:96 /R:3 /W:3 /MIR
复制代码
作者: 草青青2020 时间: 2020-5-26 21:21
回复 14# smss
还是一样的,一保存就乱码!
作者: smss 时间: 2020-5-26 22:31
回复 15# 草青青2020
你使用Notepad++来保存一下试试 目测是你电脑无法正确保存为ansi编码导致
解决Bat保存为UTF8时乱码 即含有中文UTF8编码可以正常运行- reg add "HKCU\Console\C:\Windows_system32_cmd.exe" /f /v "CodePage" /t REG_DWORD /d 65001
- reg add "HKCU\Console\C:\Windows_system32_cmd.exe" /f /v "WindowSize" /t REG_DWORD /d 1572944
- reg add "HKCU\Console\C:\Windows_system32_cmd.exe" /f /v "FontSize" /t REG_DWORD /d 786432
- reg add "HKCU\Console\C:\Windows_system32_cmd.exe" /f /v "FontFamily" /t REG_DWORD /d 54
- reg add "HKCU\Console\C:\Windows_system32_cmd.exe" /f /v "FontWeight" /t REG_DWORD /d 400
- reg add "HKCU\Console\C:\Windows_system32_cmd.exe" /f /v "FaceName" /t REG_SZ /d "Lucida Console"
复制代码
作者: flashercs 时间: 2020-5-27 00:33
回复 11# 草青青2020
1.脚本最前面添加一行代码复制代码
2.保存为utf8-nobom编码,一定不要用 记事本 来保存脚本,可以用notepad++编辑脚本.
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |