Node JS bashコマンドでこのディレクトリは何ですか?

Node JS bashコマンドでこのディレクトリは何ですか?

NodeJSページを読んで、偶然次のbashコマンドを見つけました。

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

これ:

  • テスト空で${XDG_CONFIG_HOME-}ホームディレクトリを印刷します。または残りは印刷してください
  • 結果のエクスポート
  • ディレクトリからスクリプトを実行する

なぜか理解できませんか${XDG_CONFIG_HOME-}

また、$(...)がここで何をしているのかわかりません。印刷やエコだけで十分ではないでしょうか?

答え1

XDG_CONFIG_HOMEプログラムが構成ファイルを保存する必要があるディレクトリに展開される環境変数。デフォルトでは、このディレクトリは.configホームディレクトリにあります。だから私の場合は/home/john/.config

質問したコマンドは、この環境変数が設定されていることを確認するようです。設定されている場合NVM_DIRに設定されます${XDG_CONFIG_HOME}/nvm。それ以外(XDG_CONFIG_HOME設定されていない場合)に設定されNVM_DIRます${HOME}/.nvm${HOME}ホームディレクトリに展開するだけです。

私はこれがNVM_DIRプログラムが設定(または他の)データを保存するディレクトリだと思います。コマンドの最初の行は、ifXDG_CONFIG_HOME設定(私が知っている限り、最新のLinuxシステムで最も一般的です)に基づいてディレクトリの場所を選択します。

関連情報