0

NodeJSスクリプト内からAzureNodeJSCLIからJSONオブジェクトをキャプチャする方法はありますか?exec('azure vm list')のようなことをして、遅延されたstdout結果を処理する約束を書くか、process.stream.writeメソッドを乗っ取ることができますが、非常に広範なCLIコードを見ると、 cli関数またはJSON結果を直接返す可能性のある他のオプションにコールバックを渡す方法があるかもしれません。あなたはウィンストンロガーモジュールを使用しているようです-私はこれに精通しているかもしれませんが、おそらくそこに使用できるフックがあります。

4

2 に答える 2

0

azure vm list には --json オプションがあります。

 C:\>azure vm list -h
 help:    List Azure VMs
 help:
 help:    Usage: vm list [options]
 help:
 help:    Options:
 help:      -h, --help               output usage information
 help:      -s, --subscription <id>  use the subscription id
 help:      -d, --dns-name <name>    only show VMs for this DNS name
 help:      -v, --verbose            use verbose output
 help:      --json                   use json output

exec(...) 呼び出しのコールバックで json の結果を取得できます。これはあなたのために働くでしょうか?

于 2012-11-27T20:05:34.943 に答える
0

はい、できます。この要点を確認してください: https://gist.github.com/4415326と、exec を実行せずに方法を確認できます。基本的に、CLI からぶら下がっているロガーをオーバーライドします。

補足として、新しいモジュール azure-cli-buddy を公開しようとしています。これにより、この手法を使用して CLI を簡単に呼び出し、JSON で結果を受け取ることができます。

于 2013-01-10T06:13:11.790 に答える