概述
- 批处理文件具有.bat或者.cmd的扩展名,其最简单的例子,是逐行书写在命令行中会用到的各种命令。
- 更复杂的情况,需要使用if,for,goto等命令控制程序的运行过程,如同C,Basic等中高级语言一样。如果需要实现更复杂的应用,利用外部程序是必要的,这包括系统本身提供的外部命令和第三方提供的工具或者软件。
- 某度某科有相关命令教程。
- 简单对其命令做一总结:
- 输出 :echo
- 注释 :rem
- 调用 :call/start
- 跳转 :goto:
- 设置与删除 : set/set x==
- 符号简介
- @ :回显屏蔽
- > :覆盖重定向
- >> :追加重定向
- < :输入重定向
- | :将前面的输出作为后面的输入
- ^ :转义符
- %%、>、= 等特殊操作符也有其特殊作用
下面直接上.bat文件对其进行分析
@echo off
call :prepare_env
call :build_vs
goto :EOF
:prepare_env
echo "call env.bat if exist"
if exist env.bat (call env.bat)
goto :EOF
:build_vs
if defined VC_DIR (
if defined QT5_9 (echo "VC_DIR and QT5_9 are set.") else (
echo "please set the 2 env variables: VC_DIR, QT5_9 in env.bat, and retry again."
pause
exit
)
) else (
echo "please set the 2 env variables: VC_DIR, QT5_9 in env.bat, and retry again."
pause
exit
)
SET PATH=%QT5_9%;%PATH%
call "%VC_DIR%vcvarsall.bat" amd64
qmake -r -tp vc ./monitor_server.pro
pause
start devenv.exe monitor_server.sln
goto :EOF
@echo off:关闭所有命令的回显
call : 和汇编里的call很像,但是要注意其和goto、start的区别
goto : EOF,返回并等待下一条命令,而exit则是直接退出
if exist :判断目标是否存在,if有很多用法
set PATH::设置环境变量,所以还有一个env.bat文件(见后)
qmake:Qt的工具,生成跨平台的.pro项目
start:可以理解为另起一个进程
rem env.bat如下,存放了一些路径,设置环境变量时用得到
SET VC_DIR=D:VsVC
SET QT5_9=D:qt5.9.6msvc2015_64bin
SET DEBUGGERS=D:Windows Kits10Debuggersx64
SET SYMBOL_DIR=D:symbols
SET ADVANCEDINSTALLER=C:Program Files (x86)CaphyonAdvanced Installer 14.0.2binx86
最后
以上就是义气月光为你收集整理的.bat>初窥门径的全部内容,希望文章能够帮你解决.bat>初窥门径所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复