批处理文件中使用xcopy命令复制文件到指定位置
网络搜索能够找到很多相关的文章,
但还是有几个注意事项需要记录一下:
1.相对路径;
2.长文件名;
3.路径中有空格;
4.排除特定文件;
5.管理员权限运行bat文件。
解决方法如下:
1.
使用%~dp0访问bat文件所在的位置,
其具体含义可以进行网络搜索,
说实在的,
我也没搞明白呢。
2.
3.
两个问题使用同一方法解决,
貌似时要定义一个变量,
类似如下:
set target=%C:\ProgramData\Autodesk\C3D 2022\chs\MySubassemblyHelp%。
4.
需要设置一个特定问文本文件,
在这个文件中设置需要排除的文件。
文件名:exclude.txt,
文件内容:
.bat
.txt
5.
搜索到一串脚本命令,
也不知道具体含义。
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
完整的bat文件内容如下:
@echo off %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit set target=%C:\ProgramData\Autodesk\C3D 2022\chs\MySubassemblyHelp% xcopy "%~dp0\*.*" "c:%target%" /d /y /e /exclude:%~dp0\exclude.txt
bat文件与做需要复制的文件(htm文件)在同一位置,
使用上面的bat文件,
实现了将其htm文件复制到指定位置的需求。