Win环境下的批处理命令和JScript脚本结合使用笔记
最近工作有接触到.bat 批处理命令,在Win环境下编写的时候基于以前的编码习惯,觉得批处理语法可读性较差,于是学习了解了一下结合JScript的用法,特此记录。
什么是JScript
JScript是微软的JavaScript实现,主要用于Windows脚本宿主环境,实际语法和JavaScript类似,彼此直接都有一些特性相互不支持,但大致写法相同。
JScript 可视为 JavaScript 的一个方言子集,两者在基础语法上一致,但运行环境和扩展能力差异显著。JScript 适合使用在Windows自动化脚本方面。
代码展示与说明

代码说明:
@if (@X)==(@Y) @end /* ---Harmless hybrid line that begins a JScript comment
这一段代码主要是同时兼容批处理和JScript代码,相当于在同一个脚本里面使用多种语言。
对批处理:@if (@X)==(@Y) 条件恒假,因此 @end 后的内容被批处理视为注释。
对JScript:/* 是JScript的多行注释起始符,后续内容被JScript忽略。
@echo off
echo "xxxxxx"
关闭命令回显,因为主要业务代码都在JScript里面,后续代码的输出主要是通过JScript,所以在这里关闭批处理的命令回显示;echo "xxxxxx"是为了测试,验证批处理指令的执行情况;
关键代码:
cscript //E:JScript //nologo "%~f0"
exit /b 0
这一段实现了调用JScript引擎执行当前脚本,//E + 脚本引擎名称可以指定使用什么引擎来解析代码
//nologo:禁止显示 Microsoft (R) Windows Script Host 版本信息,这里也是为了看到简洁明了的调试信息
%~f0":表示当前脚本的 完整路径(%0 是脚本名,%~f0 扩展为全路径)这里目的是讲当前的脚本作为JScript代码再次执行
exit /b 0:退出批处理,终止批处理部分的执行,避免继续运行后续的JScript代码
执行流程
批处理阶段:
1.执行 @echo off 和 echo "xxxxxx"。
2.调用 cscript 以 JScript 引擎重新执行当前脚本文件。
3.执行 exit /b 0 退出批处理。
JScript 阶段:
1.cscript 读取当前文件,忽略 /* ... / 内的内容(批处理桥接行)。
2.执行 / ... */ 之后的 JScript 代码。
另外,在JScript 代码里面可以使用WScript.Echo()打印信息,类似与Console.log;
Win环境下的批处理命令和JScript脚本结合使用笔记的更多相关文章
- Win环境下Oracle小数据量数据库的物理备份
Win环境下Oracle小数据量数据库的物理备份 环境:Windows + Oracle 单实例 数据量:小于20G 重点:需要规划好备份的路径,建议备份文件和数据库文件分别存在不同的存储上. 1.开 ...
- 在Win环境下配置java的环境进行开发步骤
1.下载官方JDK,网址如下 http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Win环境下的文件读写
在win环境下,有许多方法可以对文件进行读写操作,如MFC 中的CFile类,及一些开源的项目如QT中的QFile.开源的好得是可以多平台,而MFC只是微软自家的东西,对于想写跨平台的人,最好不用MF ...
- win64环境下使用curl命令
想在windows环境下使用curl命令,其实很简单,简单配置如下: 工具下载 在官网下载工具包:https://curl.haxx.se/download.html 我这里下载的是zip版本的,下载 ...
- 解决在win系统下使用DOS命令开启TensorBoard的问题及方法步骤
解决在win系统下使用DOS命令开启TensorBoard的问题及方法步骤: TensorBoard是TensorFlow下的一个可视化的工具,能够帮助研究者们可视化训练大规模神经网络过程中出现的复杂 ...
- win 环境下 node.js环境变量
在win 环境下 node.js环境变量有两种情况: (1)开发环境(development):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告. ...
- win环境下安装配置openCV-4.3.0
win环境下安装openCV-4.3.0 首先下载 推荐国内镜像 官网太太太慢了 附上 下载地址 下载之后打开exe解压到目录都是常规操作 环境变量的配置 依次打开到系统变量的path 新建一个路径为 ...
- Windows环境下使用Linux命令
1.说明 如何在Windows环境下使用Linux命令, 这是一个屡见不鲜的问题, 而且已经有很多解决方法, 下面仅推荐几个我觉得好用的工具, 这些工具可能就是我们常用的软件, 而且已经在Window ...
- Windows环境下Oracle数据库的自动备份脚本
批处理文件(.bat) @echo off echo ================================================ echo Windows环境下Oracle数据 ...
- Windows环境下Oracle数据库的自动备份脚本自动删除30天前的备份
@echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...
随机推荐
- Solution Set -「LOCAL」冲刺省选 Round XXVIII
\(\mathscr{Summary}\) A 题显然是图论模型嘛--但是卡得太久了,B 题 C 题都不好骗,裂开 qwq. 感觉时间安排上不尽合理,如果 B C 简单一点我这个就要挂打分了. ...
- Golang-函数5
http://c.biancheng.net/golang/func/ Go语言函数(Go语言func) 函数构成了代码执行的逻辑结构,在Go语言中,函数的基本组成为:关键字 func.函数名.参数列 ...
- nginx.conf参数优化详解
1.Niginx主配置文件参数详解 a.上面博客说了在Linux中安装nginx.博文地址为:http://www.cnblogs.com/hanyinglong/p/5102141.html b.当 ...
- biancheng-Spring MVC-HandlerMapping
一.HandlerMapping 作用是根据当前请求的找到对应的 Handler,并将 Handler(执行程序)与一堆 HandlerInterceptor(拦截器)封装到 HandlerExecu ...
- ctfshow--web14 sql注入利用``的清奇的绕过
输入c=3就会跳出来这个url 复制并访问,看这个页面应该是sql注入 有注释可看,看看他过滤了哪些东西 点击查看代码 if(preg_match('/information_schema\.tabl ...
- dart安装教程详解
官网 https://dart.dev 关于发布通道和版本字符串 Dart SDK有三个发布通道: 1==>:稳定释放,大约每三个月更新一次: 稳定释放适合生产使用. 2==>:预览发布, ...
- 浅谈基于SASE的安全云服务
本文分享自天翼云开发者社区<浅谈基于SASE的安全云服务>,作者:姚****亮 SASE(secure access service edge安全访问服务边缘):是一种安全框架,结合了软件 ...
- JMeter调用python脚本
JMeter调用python脚本 前提 具备python环境 具备jdk环境 一.编写python脚本 python脚本如下: import random # 随机一个 1~100 的随机数 prin ...
- DC/DC layout建议
DCDC电路的重要性不言而喻,不合理的PCB Layout会造成芯片性能变差,甚至损坏芯片.如:线性度下降.带载能力下降.工作不稳定.EMI辐射增加.输出噪声增加等. 环路面积最小原则 DC/DC电路 ...
- Q:plsql中文显示??处理
1.查询数据库字符集select userenv('language') from dual; 2.修改NLS_LANG环境变量:将NLS_LANG环境变量设置为正确的字符集 windows设置系统环 ...