windows批处理常用命令

1、 SETLOCAL的用法
2、chcp的用法
3、PUSHD命令和POPD命令

今天打开一个批处理文件,发现里面是这样的:

@echo off
SETLOCAL
:: change active code page to 65001 for utf-8
chcp 65001

……

:: SHELL_ROOT - Location(Path) of this batch file
pushd "%~dp0"
set SHELL_ROOT=!cd!
popd
:: REDIST_ROOT - The root path of redist
set REDIST_ROOT=!SHELL_ROOT!/../..
pushd "!REDIST_ROOT!"
set REDIST_ROOT=!cd!
popd

ENDLOCAL

调查之后发现,SETLOCAL ……ENDLOCAL 的设定,只对本批处理文件有效,即设置路径的时候,批处理里面可以单独设置。

那么chcp是干什么用的呢?它主要是使批处理里面的字符能够正常显示。
比如:
chcp 65001 就是换成UTF-8代码页
chcp 936 可以换回默认的GBK
chcp 437 是美国英语

PUSHD命令
保存当前目录以供 POPD 命令使用,然后改到指定的目录。
POPD命令
更改到 PUSHD 命令存储的目录。

如果命令扩展被启用,从推目录堆栈 POPD 驱动器时,POPD
命令会删除 PUSHD 创建的临时驱动器号。
例如
pushd c:就是记录下c:盘当你转去E:盘后用popd就可以转回c盘

你可能感兴趣的:(windows批处理常用命令)