admin 管理员组文章数量: 887021
最近在工作的项目工程中遇到了各式各样的bat脚本,故总结和记录下所遇到的指令;
文章目录
- bat脚本常用指令总结
- 1 @echo off
- 2 REF
- 3 SET
- 4 %~dp0
- 5 %~nx0
- 6 CALL
- 7 pushd
- 8 rmdir
bat脚本常用指令总结
以下是Windows批处理脚本(.bat脚本)中常见的指令总结:
-
echo:用于在终端输出文本或变量的值。
示例:echo Hello World -
set:用于创建或修改环境变量。
示例:set VARIABLE_NAME=value -
if:用于进行条件判断。
示例:
if CONDITION (
REM do something
) else (
REM do something else
) -
for:用于循环操作。
示例:
for %%VARIABLE in (list) do (
REM do something
) -
goto:用于跳转到脚本中的指定标签。
示例:
goto LABEL -
call:用于调用其他批处理文件,并返回原文件。
示例:
call other_script.bat -
cd:用于更改当前目录。
示例:
cd C:\path\to\directory -
del:用于删除文件。
示例:
del filename.txt -
copy:用于复制文件或目录。
示例:
copy source_file destination_file -
move:用于移动文件或目录。
示例:
move source_file destination_folder -
timeout:在指定的时间内暂停执行。
示例:
timeout /t 5 (暂停5秒钟) -
pause:暂停脚本的执行,等待用户按下任意键继续。
示例:
pause
这里只列举了一些常见的指令
1 @echo off
@echo off
的意思是在批处理运行命令的时候不会一条一条的显示执行的命令,与之相匹配的还有@echo on
。
@echo off
:关闭回显
@echo off
:打开回显
当不想批处理文件中的命令一行一行在DOS中显示出来时(因为全部显示出来的话看起来会变得很杂乱),可以使用@echo off,将其放于程序的最上方就行了。
示例:不加@echo off 的bat执行效果
@echo on
title A
color 0B
echo %date%
echo.
echo %time%
pause
显示为:
然后将@echo on设置为@echo off www.winwin7
结果为:
很简单@echo off在批处理中的作用就是把每条执行的命令给隐藏起来了。
2 REF
REF
的作用是注释;相当于c/c++里的//
;
在bat中,em
、@rem
和::
的作用都是注释;
3 SET
作用:设置变量,为变量赋值;
当引用该变量时,需要加上%
;
例子:
@echo off
set var=hello bat ::注意空格问题
echo %var%
pause
运行结果
hello bat
Press any key to continue . . .
4 %~dp0
%~dp0
作用是获取当前目录路径;
%~dp0 获取的是批处理文件所在目录的路径,
%~dp0 可以用来获取批处理文件的实际路径,与当前 DOS 环境所在的目录没有关系。其中:
%~dp0 的 “d” 为 Drive 的缩写,即为驱动器,磁盘;
%~dp0 的 “p” 为 Path 缩写,即为路径,目录;
实例:获取批处理文件自身磁盘路径。
@echo off
set BPath=%~dp0
echo %BPath%
pause
把1.bat文件放到D盘,运行结果:
5 %~nx0
%~nx0
,%0
表示当前正在运行的批处理文件的文件名,%~
表示一个子串的意思,n表示文件名,x表示扩展名,0表示参数0,即是%0所表示的含义;因此%~nx0表示仅取当前批处理文件的文件名和扩展名
。
6 CALL
CALL
从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。
7 pushd
pushd
命令:作用是将当前目录的路径保存下来,并且切换到你指定的新目录路径。
8 rmdir
删除一个非空目录 (必须指定目录名称)
rmdir /q /s d:\test\logs
必须指定目录名称,不能使用通配符
/S 除目录本身外,还将删除指定目录下的所有子目录
/Q 安静模式,带 /S 删除目录树时不要求确认
版权声明:本文标题:Windows BAT脚本指令总结和笔记 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1725013682h849677.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论