能否用JavaScript创建类似Java可执行JAR的程序处理日常重复任务?
用JavaScript实现命令行字符串转换程序并打包运行
当然可以用JavaScript实现和你Java程序完全相同的功能,借助Node.js就能在命令行环境处理用户输入输出,还能打包成类似JAR的可执行文件,用bat调用运行。下面是具体步骤:
一、编写JavaScript版本的转换程序
用Node.js的readline模块处理命令行交互,代码逻辑和你的Java程序完全对应:
const readline = require('readline'); // 创建命令行输入输出接口 const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); // 提示用户输入并处理转换 rl.question('Enter your input string : ', (inputStr) => { // 替换%20为空格,再把正斜杠换成Windows反斜杠 const outputStr = inputStr.replace(/%20/g, ' ').replace(/\//g, '\\'); console.log(outputStr); rl.close(); });
保存为path-converter.js即可。
二、打包成可执行文件(类似JAR)
要让程序脱离Node.js环境直接运行,用pkg工具打包成Windows可执行文件:
- 先安装Node.js(官网下载安装包,按引导完成安装即可)
- 全局安装pkg工具:打开命令提示符运行
npm install -g pkg - 进入脚本所在文件夹,执行打包命令:
执行完成后会生成一个pkg path-converter.js --targets win32-x64path-converter.exe文件,和Java的JAR一样,是独立可执行的。
三、用bat文件调用运行
运行原始JS脚本的bat
如果不想打包,直接用bat调用Node.js运行脚本,创建run-script.bat,内容:
@echo off node path-converter.js pause
把path-converter.js换成脚本的实际路径,双击bat就能弹出命令行窗口,输入字符串后得到转换结果,pause会让窗口保持打开方便查看结果。
运行打包后exe的bat
如果已经打包成exe,bat可以更简单,创建run-exe.bat:
@echo off path-converter.exe pause
同样双击就能运行,体验和你之前用Java+JAR+bat完全一致。
内容的提问来源于stack exchange,提问作者Suman
相关产品推荐
相关产品推荐

