Closed4
zxをさわってみる
zxとは
JavaScriptでシェルスクリプトのように書けるNodeJSツール。
#!/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}`
使い方
拡張子が.mjs
のファイル(例: myscript.mjs
)でスクリプトを作って、
npx zx myscript.mjs
or
(npm >= 7の環境)
npm exec zx myscript.mjs
$.verbose
がデフォルトtrueとなっていて、これがtrueの場合コマンドの実行結果を自動的にzxが標準出力へ出力する。出力したくない場合は$.verbose = false;
をしておく
$command
の返り値はProcessOutput
型。文字列への変換には.toString()
が必要
Template literalの中で使う分には.toString()
が暗黙に実行されるので必要なし。
このスクラップは2021/05/15にクローズされました