Zx 3-0-0 正式發佈,谷歌開源的腳本工具
文 | 局長
出品 | OSC 開源社區(ID:oschina2013)
zx 是一個更方便、更友好地幫助開發者寫腳本的工具,由谷歌開源和負責維護。
簡介
雖然 Bash 十分好用,但在編寫腳本的時候,大家通常會選擇一種更方便的編程語言,例如 JavaScript 就是一個很完美的方案。不過標準的 Node.js 庫在使用之前需要許多額外的操作,比如安裝、導入庫等,zx 爲child_process
提供了封裝器,用於轉義參數並提供切合實際的默認值。
#!/usr/bin/env zx
await $`cat package.json | grep name`
let branch = await $`git branch --show-current`
await $`dep deploy --branch=${branch}`
await Promise.all([
$`sleep 1; echo 1`,
$`sleep 2; echo 2`,
$`sleep 3; echo 3`,
])
let name = 'foo bar'
await $`mkdir /tmp/${name}`
新變化
zx 3.0.0 於上週正式發佈,主要變化如下:
-
使用繼承的標準輸入而不是管道
-
對測試文件和示例文件進行分離
-
爲支持解析正確的腳本擴展名,修復了修剪查詢字符串方法
-
添加退出代碼信息
-
修復在 question() 調用處的中斷
-
在 TS compile 添加錯誤打印操作
-
如果已經解決錯誤,
pipe()
會拋出異常 -
在 - Markdown 腳本中添加對 bash 代碼塊的支持
-
修復引用和替換錯誤
-
修復 JS 堆棧的拆分正則表達式問題
詳情查看 release note:https://github.com/google/zx/releases/tag/3.0.0(BTW,目前最新的版本是 3.1.0)
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/DRhcoz9vypM6R5OX0GF8jQ