nodejsインタラクティブライブラリ--strip-ansi,address,default-gatewayとji


nodejsインタラクティブライブラリシリーズ
ライブラリ
作用
chalk-pipe
よりシンプルなスタイルの文字列を使ってチョークスタイルのスキームを作成します.
chalk
ターミナル文字列スタイルを正しく処理します.
Commander.js
完全なnode.jsコマンドライン解決案
Inquirer.js
共通のインタラクティブコマンドのセットは、ユーザーインターフェースを行います.
slash
システムパスの処理
minimist
解析パラメータのオプション
dotensv
環境変数を.envファイルからprocess.envにロードします.
dotensv-expand
コンピュータ上にすでに存在している環境変数を拡張します.
sh-sum
非常に速いユニークなハッシュジェネレータ
deepmerge
2つ以上のオブジェクトのエニュメレート・プロパティーを深さに結合します.
yaml-front-mater
yamlまたはjsonを解析します
レスリング
nodeのrequire.resolve()アルゴリズムを実装すると、require.reolve()代表ファイルを非同期的に使用することができる.
semver
npmの意味バージョン
セブン
二つの文字列の違いを測定する最も早いJS実現の一つ.
ルcache
最近最も使用されているアイテムのキャッシュオブジェクトを削除します.
ポーターfinder
自動検索8000から65535までの利用可能なポート番号
ora
優雅なターミナルホイール
envinfo
障害除外ソフトウェア問題(オペレーティングシステム、バイナリバージョン、ブラウザ、インストール済み言語など)を生成する際に必要な汎用詳細情報の報告
memfs
メモリファイルシステムはNode's fs APIと同じように実現される.
execa
人間の流れに対して実行する.
webpack-merge
配列と結合オブジェクトを接続するために、新しいオブジェクトを作成します.
webpack-chain
連鎖APIを使用して、webpackバージョンの構成を簡略化する修正を生成する.
strip-ansi
文字列からANSI変換コードを削除します.
address
現在のマシンのIP,MAC,DNSサーバを取得します.
default-gateway
OSルーティングインターフェースのexec呼び出しで機器のデフォルトゲートウェイを取得します.
ジョン
JavaScriptの最も強力なパターン記述言語とデータ検証器.
fs-extra
オリジナルfsモジュールに含まれていないファイルシステム方法を追加し、fs方法にプロミサポートを追加しました.
Aコール
小型で高速なJavaScript解析器は、JavaScriptで完全に作成されています.
zlib.js
ZLIB.jsはZLIB(RFC 1950)、DEFLATE(RFC 1951)、GZIP(RFC 1952)、PKZIPはJavaScriptで実現される.
nodejsインタラクティブライブラリ--chalk-pipeとchalk
nodejsインタラクティブツールライブラリ--commanderとInquirer
nodejsインタラクティブライブラリ--slash,minimistとdotensv,dotensv-expand
nodejsインタラクティブライブラリ--hash-sum,deepmergeとyaml-front-mater
nodejsインタラクティブツールライブラリ--revoveとsemver
nodejsインタラクティブライブラリ--leven,lll cacheとportfinder
nodejsインタラクティブツールライブラリ--oraとenvinfo
nodejsインタラクティブライブラリ--memfsとexeca
nodejsインタラクティブライブラリ--webpack-mergeとwebpack-chain
nodejsインタラクティブライブラリ--strip-ansi,address,default-gatewayとji
nodejsインタラクティブライブラリ--fs-extra,Acornとzlib
strip-ansi
文字列からANSI変換コードを削除します.
Install
$ npm install strip-ansi
Usage
const stripAnsi = require('strip-ansi');

stripAnsi('\u001B[4mUnicorn\u001B[0m');
//=> 'Unicorn'

stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
//=> 'Click'
strip-ansi for enterprise
Tideliftとして購読できる一部
strip-ansiと数千の他のカバンのメンテナはTideliftと協力して、アプリケーションのオープンソース依存項を構築するために商業サポートとメンテナンスを提供しています.時間を節約し、リスクを低減し、コードの運行状況を改善します.また、ご利用の依存項のメンテナに対してはLearn more.をお支払いします.
参照
基本的によく使われる方法シーンはこれだけです.もっと完全な使い方は直接文書を見ることができます.
strip-ansi
address
現在のマシンのIP,MAC,DNSサーバを取得します.
DNSサーバは/etc/resolv.confを受信する.
Install
$ npm install address
Usage
Get IPは同期しています.Get MACは現在非同期です.
var address = require('address');

// default interface 'eth' on linux, 'en' on osx.
address.ip();   // '192.168.0.2'
address.ipv6(); // 'fe80::7aca:39ff:feb0:e67d'
address.mac(function (err, addr) {
  console.log(addr); // '78:ca:39:b0:e6:7d'
});

// local loopback
address.ip('lo'); // '127.0.0.1'

// vboxnet MAC
address.mac('vboxnet', function (err, addr) {
  console.log(addr); // '0a:00:27:00:00:00'
});
Get all address:IPv 4、IPv 6 and MAC
address(function (err, addrs) {
  console.log(addrs.ip, addrs.ipv6, addrs.mac);
  // '192.168.0.2', 'fe80::7aca:39ff:feb0:e67d', '78:ca:39:b0:e6:7d'
});

address('vboxnet', function (err, addrs) {
  console.log(addrs.ip, addrs.ipv6, addrs.mac);
  // '192.168.56.1', null, '0a:00:27:00:00:00'
});
Get an interface info with family
address.interface('IPv4', 'eth1');
// { address: '192.168.1.1', family: 'IPv4', mac: '78:ca:39:b0:e6:7d' }
Get DNS servers
address.dns(function (err, addrs) {
  console.log(addrs);
  // ['10.13.2.1', '10.13.2.6']
});
benchmark
ルン$ npm run benchmark
18,929 op/s » #ip
17,622 op/s » #ipv6
16,347 op/s » #mac
11,906 op/s » #dns
参照
基本的によく使われる方法シーンはこれだけです.もっと完全な使い方は直接文書を見ることができます.
address
default-gateway
OSルーティングインターフェースのexc呼び出しにより機器のデフォルトゲートウェイを取得します.
  • は、LinuxおよびAndroidにおいて、ipコマンドが利用可能である必要がある(通常は、iproute 2パケットによって提供される).
  • Windowsでは、wmicが利用可能である必要があります.
  • は、IBM_i上で、db 2 utilコマンドが利用可能である必要がある(db 2 utilパケットによって提供される).
  • は、Unix(およびmacOS)上で、netstatコマンドが利用可能である必要があります.
  • Installation
    $ npm i default-gateway
    Example
    const defaultGateway = require('default-gateway');
    
    const {gateway, interface} = await defaultGateway.v4();
    // gateway = '1.2.3.4', interface = 'en1'
    
    const {gateway, interface} = await defaultGateway.v6();
    // gateway = '2001:db8::1', interface = 'en2'
    
    const {gateway, interface} = defaultGateway.v4.sync();
    // gateway = '1.2.3.4', interface = 'en1'
    
    const {gateway, interface} = defaultGateway.v6.sync();
    // gateway = '2001:db8::1', interface = 'en2'
    API
    default Gateway.v 4()
    default Gateway.v 6()
    defaultGateway.v 4.sync()
    defaultGateway.v 6.sync()
    Returns:result Object
  • gateway:デフォルトゲートウェイのIPアドレス
  • interface:インターフェースの名前.Windows上では、ネットワークアダプター名.v{4,6}()がPromiseに戻り、.v{4,6}.sync()が同期を体得した結果
  • である.
    ゲートウェイ属性は常に成功時に定義されますが、インターフェースが確定できない場合はnullとなります.すべての方法は予期せぬ状況で拒否/投げ出します.
    参照
    基本的によく使われる方法シーンはこれだけです.もっと完全な使い方は直接文書を見ることができます.
    default-gateway
    ジョン
    JavaScriptの最も強力なパターン記述言語とデータ検証器.
    Installation
    npm install joi
    アクセスjoi.devポータルは教程、ドキュメント、サポートを取得します.
    const Joi = require('joi')
    
    //     
    const schema = Joi.object({
      a: Joi.number()
    });
    
    //     
    const string = { a: '123' };
    const number = { a: 123 };
    const boleean = { a: true };
    
    //     
    const result1 = schema.validate(string)
    const result2 = schema.validate(number)
    const result3 = schema.validate(boleean)
    console.log(result1, result2, result3)
    /* 
    { value: { a: 123 } } 
    { value: { a: 123 } } 
    {
      value: { a: true },
      error: [Error [ValidationError]: "a" must be a number] {
        _original: { a: true },
        details: [ [Object] ]
      }
    } 
    */
    Useful resource
  • Dcumentation and API
  • Versions status
  • Changelog
  • Project policies
  • 参照
    基本的によく使われる方法シーンはこれだけです.もっと完全な使い方は直接文書を見ることができます.
    ジョン