脚本bat命令相关

指南链接:https://ss64.com/nt/ (opens new window)

cmd命令参考:Microsoft (opens new window)

常以 @ECHO OFF开端

# 常用指令

if (opens new window)robocopy (opens new window)set (opens new window)pause (opens new window)

# 常用系统变量

查看详细
变量代码 描述
%ALLUSERSPROFILE% 列出所有用户Profile文件位置
%APPDATA% 列出应用程序数据的默认存放位置
%CD% 列出当前目录
%CLIENTNAME% 列出联接到终端服务会话时客户端的NETBIOS名
%CMDCMDLINE% 列出启动当前cmd.exe所使用的命令行
%CMDEXTVERSION% 命令出当前命令处理程序扩展版本号
%CommonProgramFiles% 列出了常用文件的文件夹路径
%COMPUTERNAME% 列出了计算机名
%COMSPEC% 列出了可执行命令外壳(命令处理程序)的路径
%DATE% 列出当前日期
%ERRORLEVEL% 列出了最近使用的命令的错误代码
%HOMEDRIVE% 列出与用户主目录所在的驱动器盘符
%HOMEPATH% 列出用户主目录的完整路径
%HOMESHARE% 列出用户共享主目录的网络路径
%LOGONSEVER% 列出有效的当前登录会话的域名控制器名
%NUMBER_OF_PROCESSORS% 列出了计算机安装的处理器数
%OS% 列出操作系统的名字
%Path% 列出了可执行文件的搜索路径
%PATHEXT% 列出操作系统认为可被执行的文件扩展名
%PROCESSOR_ARCHITECTURE% 列出了处理器的芯片架构
%PROCESSOR_IDENTFIER% 列出了处理器的描述
%PROCESSOR_LEVEL% 列出了计算机的处理器的型号
%PROCESSOR_REVISION% 列出了处理器的修订号
%ProgramFiles% 列出了Program Files文件夹的路径
%PROMPT% 列出了当前命令解释器的命令提示设置
%RANDOM% 列出界于0 和 32767之间的随机十进制数
%SESSIONNAME% 列出连接到终端服务会话时的连接和会话名
%SYSTEMDRIVE% 列出了Windows启动目录所在驱动器
%SYSTEMROOT% 列出了Windows启动目录的位置
%TEMP% and %TMP% 列出了当前登录的用户可用应用程序的默认临时目录
%TIME% 列出当前时间
%USERDOMAIN% 列出了包含用户帐号的域的名字
%USERNAME% 列出当前登录的用户的名字
%USERPROFILE% 列出当前用户Profile文件位置
%WINDIR% 列出操作系统目录的位置

# 获取目录文件路径

可以直接在命令提示符下运行CALL /?,获取详细说明

注意

如果路径中包含空格,则应该将路径加文件名用双引号括起来

%~d0 :当前bat文件所在的盘符

%~dp0 :当前bat文件所在的位置(盘符+目录)

%~sdp0 :当前盘符和路径的短文件名格式

%~f0 :当前bat文件全路径(盘符+目录+文件名)

%cd% :当前CMD默认目录(当前工作目录)

简单脚本命令示例
@ECHO OFF
echo 当前盘符:%~d0
echo 当前盘符和路径:%~dp0
echo 当前批处理全路径:%~f0
echo 当前盘符和路径的短文件名格式:%~sdp0
echo 当前CMD默认目录:%cd%
pause
1
2
3
4
5
6
7

# cmd窗口显示乱码

# 临时解决

窗口下执行chcp 65001进行修改,常用代码页有:

查看详细
十进制码值 对应编码名称
65001 UTF-8
936 简体中文(GBK)
437 MS-DOS 美国英语

# 永久解决

打开Windows设置时间和语言语言管理语言设置更改系统区域设置

# 参考链接

Stackoverflow (opens new window)

Microsoft (opens new window)