この記事では、zx ライブラリを使用して Nodejs でシェル スクリプトを作成する方法について説明します。

青灯夜游
リリース: 2022-01-19 19:42:23
転載
3565 人が閲覧しました

Nodeでシェルスクリプトを書くにはどうすればいいですか?次の記事では、zx ライブラリを使用して Node でシェル スクリプトを記述する方法を紹介します。

この記事では、zx ライブラリを使用して Nodejs でシェル スクリプトを作成する方法について説明します。

シェル スクリプト

シェル スクリプト、つまりシェルによって実行されるスクリプトを作成します。 Bash や zsh などは、特に運用担当者や保守担当者にとって、反復的なタスクを自動化するために使用される一般的な方法です。フロントエンド エンジニアにとって、Node.js を使用してシェル スクリプトを記述することは、多くのコア モジュールを提供し、他のフロントエンド スクリプト ライブラリをインポートして学習コストを削減できるため、良い選択です。

zx.js の助けを借りずに Node.js で実行されるシェル スクリプトを作成しようとすると、期待したほどスムーズではないことがわかるかもしれません。コマンドライン引数をエスケープしてから stdout stdout と stderr stderr を使用するように注意して、サブプロセス用の特別な処理を記述する必要があります。特に直感的ではなく、記述するのが非常に困難になります。シェルスクリプトの使用が不器用です。

Bash シェル スクリプト言語は、サブプロセスを処理するコードを作成する必要がなく、シェル スクリプトを作成するのに最適な言語であり、stdout および # を処理する機能を備えています。 # #stderr の組み込み言語機能。しかし、Bash で shell スクリプトを記述するのはそれほど簡単ではなく、構文が非常に複雑になる可能性があるため、ロジックの実装やユーザー入力のプロンプトなどの処理が不便になります。

Google の

zx.js ライブラリを使用すると、Node.js を使用した shell スクリプトの作成が効率的かつ楽しくなります。

公式ウェブサイト: https://github.com/google/zx#-zx

インストール

フロント エンド エンジニアにとって、依存関係をインストールするのは一般的なことなので、スクリプト

npm install zx
ログイン後にコピー

Using

Google の

zx を実行します。 js 子プロセスの作成と、これらのプロセスからの stdout および stderr の処理を​​カプセル化する関数を提供します。以下で使用する主な関数は $ 関数です。zx.js を使用して、スクリプトが拡張子 .mjs のファイルに書き込まれるように指定します。最上位の await で使用できるようにします。 .js 拡張子に慣れている場合は、スクリプトを void async function () {...}() のようなものでラップします。

まず、拡張子

.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 スクリプトを実行しましょう。

この記事では、zx ライブラリを使用して Nodejs でシェル スクリプトを作成する方法について説明します。Google の

zx.js

には、シェル スクリプトの作成を簡素化するための他の実用的な関数 (

cd()## など) も提供されています。 #: 現在の作業ディレクトリの変更を許可する

question(): ユーザーに直接入力を求めることができる Node.js の readline モジュールのラッパー。

./ls.mjs
ログイン後にコピー
zx.js

が提供する実用的な機能に加えて、次のようないくつかの一般的なスクリプト ライブラリも提供します。

chalk を参照してください。 !

以上がこの記事では、zx ライブラリを使用して Nodejs でシェル スクリプトを作成する方法について説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:juejin.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート