# 背景
8 月 5 日,谷歌开源了一款工具,受到了大家的欢迎,到目前这个项目已经收获了 22.3k 的点赞,很多小伙伴都反馈这款工具很好用。
zx 是一个更方便、更友好地帮助开发者写脚本的工具
# 项目用法
如果你对一些 linux 或者 window 等平台的命令行比较熟悉,并且会一些 JavaScript 的语法,那么使用这个工具就可以得心应手。比如作为一个前端开发者,我想要使用命令行新建一个前端的项目并且运行它,我们可以这么做。
# 1. 安装 node.js
从 node.js 官网下载版本大于等于 14.8.0 版本
# 2. 安装 zx 工具
因为 node.js 自带 npm 包管理工具,可以使用 npm 指令进行 zx 的安装:
// 全局安装 zx | |
npm install -g zx |
# 4. 安装 vue-cli 工具
因为要创建一个前端 vue 项目,我们需要安装 vue-cli 脚手架工具:
npm install -g vue-cli |
# 3. 编写 .mjs 文件
我们需要书写一个 .mjs 文件。
- createVueApp.mjs
#!/usr/bin/env zx | |
await $`vue create vue-demo` | |
await $`cd vue-demo` | |
await $`npm run dev` |
# 4. 运行 .mjs 文件
通过 zx 工具运行文件,执行脚本
zx createVueApp.mjs |
# 项目效果
可以看出,它会自动执行文件里面的脚本,对于一些比较固定的指令,我们可以把它写在文件里面,下次要是有类似操作,只需要跑一下脚本即可。
# 项目功能
项目提供了还多工具
$`指令` | |
// 创建一个文件 | |
let name = 'test' | |
await $`mkdir ${name}` | |
// 进行一些 git 指令的操作 | |
let flags = [ | |
'--oneline', | |
'--decorate', | |
'--color', | |
] | |
await $`git log ${flags}` | |
// 程序要异常退出 | |
try { | |
await $`exit 1` | |
} catch (p) { | |
console.log(`Exit code: ${p.exitCode}`) | |
console.log(`Error: ${p.stderr}`) | |
} | |
// 函数 | |
cd() | |
// 切换到 /tmp | |
cd('/tmp') | |
await $`pwd` | |
fetch() | |
// 请求资源 | |
let resp = await fetch('https://www.baidu.com') | |
if (resp.ok) { | |
console.log(await resp.text()) | |
} | |
... |
# 项目地址
https://github.com/google/zx