このガイドでは、 "n"について簡単に紹介します。 、非公式のノードバージョン管理ツールであり、Linuxオペレーティングシステムでnを使用してnodejsバージョンを簡単に管理する方法を説明しています。
ノードバージョンマネージャーのnとは何ですか?
NodeJS 紹介は必要ありません。 Nodejsは、GoogleのV8エンジン上に構築されたJavaScriptのランタイム環境です。 Nodejsには、npm
というパッケージマネージャーが組み込まれています。 ノードバージョンをインストールおよび管理するために、ノードバージョンを管理するための多くのサードパーティツールも存在します。 nは、サードパーティのノードバージョン管理ツールの1つです。はい、それはただ一文字です-n。
n は、単一または複数のNodeJSバージョンを簡単に管理するためのインタラクティブなノードバージョンマネージャーです。サブシェル、プロファイルセットアップ、複雑なAPI、学習曲線はなく、シンプルです。 道具。これは単なるシェルスクリプトであり、そのコードはGitHubで無料で入手できます。
1。 Linuxにnをインストールする
nをインストールする最も簡単な方法は、npm
を使用することです。 。すでに述べたように、NpmはNodejsの組み込みパッケージマネージャーであり、Nodejsがプリインストールされています。
Linuxマシンにはすでに最新のNodejsがインストールされていると思います。 NodeJSをまだインストールしていない場合は、次のガイドを参照してください。
- LinuxにNodeJSをインストールする方法
次に、次のコマンドを実行してLinuxにnをインストールします。
$ npm install -g n
npmが利用できない場合、またはnpmを使用してnをインストールしたくない場合は、GitHubからnスクリプトを直接取得して、次のようにインストールできます。
$ curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n
$ bash n lts
これにより、両方のnode
がインストールされます ltsバージョンとnpm
。
1.2。ノードインストール用のホームディレクトリを作成する
デフォルトでは、nはnode
をインストールします n/versions
の下 /usr/local/
のサブディレクトリ N_PREFIX
で定義されているディレクトリ 環境変数。ご存知のとおり、sudo
が必要です /usr/local/n/versions/node/
の下にノードをインストールする権限 ディレクトリ。 sudo
の使用を避けるため 、$ HOMEにノードインストール専用のディレクトリを作成し、それらをPATH
に追加できます。 。
ノードをインストールするためのホームディレクトリを作成するには、ユーザープロファイルファイル(~/.bashrc
など)を編集します。 :
$ vi ~/.bashrc
次の行を追加します:
export N_PREFIX=$HOME/.n
export PATH=$N_PREFIX/bin:$PATH
ESC
を押します キーを押して:wq
と入力します ファイルを保存して終了します。
1.3。 n-installスクリプトを使用してnをインストールします
nをインストールする別の方法は、 n-installを使用することです。 スクリプト。GitHubから直接nをインストールします。
$ curl -L https://git.io/n-install | bash
このコマンドは、次の一連のタスクを実行します。
- まず、両方の
PREFIX
を設定します およびN_PREFIX
$HOME/n
へ; - そして、
n
をインストールします$HOME/n/bin
へ; - 次に、サポートされているシェルの初期化ファイルを変更して、
N_PREFIX
をエクスポートします。; - 次に、
$HOME/n/bin
を追加しますPATH
へ; - 最後に、最新のLTSNode.jsバージョンをインストールします。
2。 Linuxでnを使用してnodejsバージョンを管理する
nを使用したnodejsバージョンのインストールと管理は非常に簡単です。いくつかの例を見てみましょう。
2.1。ヘルプを得る
nを初めて使用する場合は、ヘルプセクションを表示して、nの使用方法を学ぶことをお勧めします。
nのヘルプセクションを表示するには、次のコマンドを実行します。
$ n --help
ヘルプマニュアルに目を通し、各コマンドの使用法を垣間見ることができます。
Usage: n [options] [COMMAND] [args]
Commands:
n Display downloaded Node.js versions and install selection
n latest Install the latest Node.js release (downloading if necessary)
n lts Install the latest LTS Node.js release (downloading if necessary)
n Install Node.js (downloading if necessary)
n install Install Node.js (downloading if necessary)
n run [args …] Execute downloaded Node.js with [args …]
n run [args …] Execute downloaded node with [args …]
n which Output path for downloaded node
n exec [args…] Execute command with modified PATH, so downloaded node and npm first
n rm Remove the given downloaded version(s)
n prune Remove all downloaded versions except the installed version
n --latest Output the latest Node.js version available
n --lts Output the latest LTS Node.js version available
n ls Output downloaded versions
n ls-remote [version] Output matching versions available for download
n uninstall Remove the installed Node.js
Options:
-V, --version Output version of n
-h, --help Display help information
-p, --preserve Preserve npm and npx during install of Node.js
-q, --quiet Disable curl output (if available)
-d, --download Download only
-a, --arch Override system architecture
--all ls-remote displays all matches instead of last 20
--insecure Turn off certificate checking for https requests (may be needed from behind a proxy server)
--use-xz/--no-use-xz Override automatic detection of xz support and enable/disable use of xz compressed node downloads.
Aliases:
install: i
latest: current
ls: list
lsr: ls-remote
lts: stable
rm: -
run: use, as
which: bin
Versions:
Numeric version numbers can be complete or incomplete, with an optional leading 'v'.
Versions can also be specified by label, or codename,
and other downloadable releases by /
4.9.1, 8, v6.1 Numeric versions lts Newest Long Term Support official release latest, current Newest official release auto Read version from file: .n-node-version, .node-version, .nvmrc, or package.json engine Read version from package.json boron, carbon Codenames for release streams lts_latest Node.js support aliases and nightly, rc/10 et al
2.2。 nを使用してNodejsバージョンをインストールする
n
を使用して最新のnodejsバージョンをインストールするには 、単に実行します:
$ n latest
出力例:
installing : node-v16.2.0 mkdir : /home/ostechnix/.n/n/versions/node/16.2.0 fetch : https://nodejs.org/dist/v16.2.0/node-v16.2.0-linux-x64.tar.xz installed : v16.2.0 (with npm 7.13.0) Note: the node command changed location and the old location may be remembered in your current shell. old : /home/ostechnix/.nvm/versions/node/v16.1.0/bin/node new : /home/ostechnix/.n/bin/node To reset the command location hash either start a new shell, or execute PATH="$PATH"
古いバージョンのノードは新しい場所、つまり/home/ostechnix/.n/bin/node
に移動されます 私の場合。新しいシェルセッションを開くか、ターミナルセッションを再起動して、新しい場所からノードバージョンを使用します。
インストールされているノードのバージョンを確認します:
$ node --version v16.2.0
npmバージョンを確認してください:
$ npm -v 7.13.0
同様に、 nを使用してLTSノードバージョンをインストールできます 以下のように:
$ n lts
出力例:
installing : node-v14.17.0 mkdir : /home/ostechnix/.n/n/versions/node/14.17.0 fetch : https://nodejs.org/dist/v14.17.0/node-v14.17.0-linux-x64.tar.xz installed : v14.17.0 (with npm 6.14.13)
16.0.0
などの特定のNodejsバージョンをインストールすることもできます。 、コマンドを使用:
$ n 16.0.0
お気づきかもしれませんが、nはノードバージョンごとに個別のディレクトリを作成します。たとえば、/home/ostechnix/.n/n/versions/node/16.2.0
を作成します。 最新のノードバージョンのディレクトリ、n/versions/node/14.17.0
ノードLTSバージョンおよびn/versions/node/16.0.0
の場合 ノードバージョン16.0.0の場合。このようにして、各バージョンが互いに混ざり合うことがなく、いつでも任意のバージョンに切り替えることができます。
2.3。 Nodejsバージョンをダウンロードしますが、インストールしないでください
Nodejsバージョンをインストールせず、ダウンロードするだけの場合は、-d
を使用します。 、--download
オプション:
$ n -d 15.8.0
このコマンドは、ノード15.8.0バージョンのみをダウンロードしますが、インストールしません。
出力例:
installing : node-v15.8.0 mkdir : /home/ostechnix/.n/n/versions/node/15.8.0 fetch : https://nodejs.org/dist/v15.8.0/node-v15.8.0-linux-x64.tar.xz
2.4。ローカルにダウンロードされたNodejsのバージョンを一覧表示する
ダウンロードしたすべてのNodejsバージョンをローカルキャッシュに表示するには、次のコマンドを実行します。
$ n ls
または、
$ n list
出力例:
node/14.17.0 node/15.8.0 node/16.0.0 node/16.2.0
2.5。リモートリポジトリから利用可能なNodejsバージョンを一覧表示する
ls-remote
を使用できます npmレジストリからNodejsの最近の20バージョンを表示するオプション 。
$ n ls-remote
または、
$ n lsr
出力例:
Listing remote… Displaying 20 matches (use --all to see all). 16.2.0 16.1.0 16.0.0 15.14.0 15.13.0 15.12.0 15.11.0 15.10.0 15.9.0 15.8.0 15.7.0 15.6.0 15.5.1 15.5.0 15.4.0 15.3.0 15.2.1 15.2.0 15.1.0 15.0.1
最新バージョンが上部に表示されます。
デフォルトでは、20のバージョンがリストされています。特定の数のノードバージョンを表示することもできます。
$ n lsr 10
利用可能なすべてのnodejsバージョンを一覧表示するには、--all
を使用します オプション。
$ n ls-remote --all
2.6。ダウンロードしたNodejsバージョンのパスを表示します
ダウンロードした特定のノードバージョンのフルパスを印刷するには、次のコマンドを実行します。
$ n which node/16.2.0
出力例:
/home/ostechnix/.n/n/versions/node/16.2.0/bin/node
2.7。 Nodejsのバージョンを切り替える
最後にインストールされたバージョンがデフォルトのノードバージョンになります。別のバージョンに切り替える場合は、n
と入力します ダウンロードしたノードバージョンのリストからバージョンを選択します。
$ n
このコマンドは、ダウンロードされたすべてのnodejsバージョンを表示します。上/下矢印を使用して必要なバージョンを選択し、Enterキーを押してインストールできます。
node/14.17.0 node/15.8.0 ο node/16.0.0 node/16.2.0 Use up/down arrow keys to select a version, return key to install, d to delete, q to quit>
デフォルトのバージョンは、その前に小さな円で示されています。
ダウンロードした特定のnodejsバージョンが必要ない場合は、それを選択してd
を押します。 削除します。終了するには、q
を押します 。
2.8。ダウンロードしたNodejsバージョンを実行する
すでに述べたように、最後にインストールされたバージョンがデフォルトのノードバージョンです。デフォルトに設定せずに別のバージョンを実行する場合は、次のコマンドを使用できます。
$ n run 15.8.0
出力例:
Welcome to Node.js v15.8.0. Type ".help" for more information. >
Ctrl+D
を押します または、.exit
と入力します ノードプロンプトを終了します。
2.9。ダウンロードしたNodejsバージョンを削除する
コマンドでダウンロードされたノードバージョンの数を一覧表示します:
$ n ls
特定のバージョンを削除するには、次のようにバージョン番号を指定してください:
$ n rm node/16.0.0
または、n
と入力します 使用可能なノードバージョンを表示するには:
$ n
上/下矢印を使用して削除するバージョンを選択し、d
を押します 削除します。ノードのバージョンを削除するときは注意が必要です。削除の確認を求めるプロンプトが表示されないためです。 d
を押したら キーを押すと、選択したバージョンがなくなります。
インストールされているバージョンを除くダウンロードされたすべてのバージョンを削除するには、次のコマンドを実行します。
$ n prune
インストールされているNodejsバージョンを完全に削除するには、次のコマンドを実行します。
$ n uninstall
システムからNodeとNpmの両方を削除するかどうかを尋ねられます。 y
と入力します ENTER
を押します node
を完全に削除するためのキー およびnpm
n
によってインストールされました システムから。
Do you wish to delete node and npm from /home/ostechnix/.n? y Uninstalling node and npm /home/ostechnix/.n/bin/node /home/ostechnix/.n/bin/npm /home/ostechnix/.n/bin/npx /home/ostechnix/.n/include/node /home/ostechnix/.n/lib/node_modules/npm /home/ostechnix/.n/share/doc/node /home/ostechnix/.n/share/man/man1/node.1 /home/ostechnix/.n/share/systemtap/tapset/node.stp
ただし、これによって、NVMまたはディストリビューションパッケージマネージャーを使用してインストールされたノードバージョンは削除されません。 nとともにインストールされているノードバージョンのみが削除されます。
結論
nスクリプトは、プロジェクトごとに異なるNodejsバージョンを使用する場合に役立ちます。 Nodejsの1つのバージョンを削除して、プロジェクトごとに別のバージョンをインストールする必要はありません。複数のNodejsバージョンをインストールして、あるNodejsバージョンから別のバージョンに即座に切り替えることができます。