このガイドでは、 "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バージョンから別のバージョンに即座に切り替えることができます。