Google 的 zx.js 可以实现,zx 是一个更方便、更友好地帮助开发者写脚本的工具。github地址 点击打开链接
安装zx.js
npm install zx使用zx.js
下面先来使用扩展名 .mjs,每个 .mjs 文件都将以下代码作为开头:
#! /usr/bin/env node
下面就来实现一个 shell 脚本中 ls 的功能,创建文件 ls.mjs ,完整代码如下:#! /usr/bin/env node
import { $ } from "zx";
$.verbose = false;
const output = (await $`ls`).stdout.trim();
console.log(output);
和 shell 脚本文件一样,需要将其转为可执行文件:
chmod +x ./ls.mjs
下面就来执行这个 Node.js 编写的 shell 脚本,执行:./ls.mjs
另外一个例子
创建一个vue项目的脚本createVueApp.mjs
#!/usr/bin/env zx
await $`vue create vue-demo`
await $`cd vue-demo`
await $`npm run dev`
话可以通过 zx 工具运行文件,执行脚本
zx createVueApp.mjs
除了 zx.js 提供的实用功能外,它还提供了几个流行的脚本库,例如:
chalk:允许为脚本的输出添加颜色。
minimist:解析命令行参数的库,将它们暴露在 argv 对象下。
fetch:可以使用它来发出 HTTP 请求。
fs-extra:公开了 Node.js 核心 fs 模块,以及许多其他方法,可以更轻松地使用文件系统。
网友回复