Linux環境変数の設定 ソフトウェアのインストールをカスタマイズする場合、多くの場合、環境変数を設定する必要があります。以下に、環境変数を設定するためのさまざまな方法を示します。 以下のすべての例の環境は次のとおりです。
Linuxは環境変数を読み取ります 環境変数を読み取る方法:
これら2つのコマンドを実行した場合の効果は次のとおりです。 uusama@ubuntu:~$ エクスポート -x HOME="/home/uusama" を宣言します -x LANG="en_US.UTF-8" を宣言します -x LANGUAGE="en_US:" を宣言します -x LESSCLOSE="/usr/bin/lesspipe %s %s" を宣言します -x LESSOPEN="| /usr/bin/lesspipe %s" を宣言します -x LOGNAME="uusama" を宣言します -x MAIL="/var/mail/uusama" を宣言します。 -x PATH="/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" を宣言します。 -x SSH_TTY="/dev/pts/0" を宣言します。 -x TERM="xterm" を宣言します -x USER="uusama" を宣言します uusama@ubuntu:~$ echo $PATH /home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PATH 変数は、コマンドを実行するための検索パスを定義します。異なるパスはコロンで区切られます。エクスポート定義を使用する場合は、二重引用符を追加することも追加しないこともできます。 Linux環境変数の設定方法1: PATHをエクスポートする export コマンドを使用して PATH の値を直接変更し、環境変数を入力するように MySQL を構成します。 PATH=/home/uusama/mysql/bin:$PATH をエクスポートします # または、先頭に PATH を置きます export PATH=$PATH:/home/uusama/mysql/bin 注記:
Linux 環境変数の設定方法 2: vim ~/.bashrc ユーザー ディレクトリの ~/.bashrc ファイルを変更して設定します。 vim ~/.bashrc # 最後の行に export PATH=$PATH:/home/uusama/mysql/bin を追加します 注記:
Linux 環境変数の設定方法 3: vim ~/.bash_profile ~/.bashrc ファイルを変更する場合と同様に、ファイルの末尾に新しいパスを追加するだけです。 vim ~/.bash_profile # 最後の行に export PATH=$PATH:/home/uusama/mysql/bin を追加します 注記:
Linux環境変数の設定方法4: vim /etc/bashrc この方法はシステム構成を変更するもので、管理者権限 (root など) またはファイルへの書き込み権限が必要です。 # /etc/bashrc ファイルが編集可能でない場合は、編集可能になるように変更する必要があります chmod -v u+w /etc/bashrc vim /etc/bashrc # 最後の行に export PATH=$PATH:/home/uusama/mysql/bin を追加します 注記:
Linux 環境変数の設定方法 5: vim /etc/profile この方法はシステム構成を変更するため、 # /etc/profile ファイルが編集可能でない場合は、編集可能になるように変更する必要があります chmod -v u+w /etc/profile vim /etc/プロファイル # 最後の行に export PATH=$PATH:/home/uusama/mysql/bin を追加します 注記:
Linux環境変数の設定方法6: vim /etc/environment この方法は、システム環境構成ファイルを変更するもので、管理者権限またはファイルへの書き込み権限が必要です。 # /etc/bashrc ファイルが編集可能でない場合は、編集可能になるように変更する必要があります chmod -v u+w /etc/environment vim /etc/プロファイル # 最後の行に export PATH=$PATH:/home/uusama/mysql/bin を追加します 注記:
Linux環境変数読み込み原理の分析 上記では環境変数のさまざまな設定方法をリストしましたが、Linux はこれらの設定をどのように読み込むのでしょうか?どのような順序でロードされますか? 特定の読み込み順序により、同じ名前の環境変数定義が上書きされたり、無効になったりする可能性があります。 環境変数の分類 環境変数は、ユーザー定義の環境変数とシステムレベルの環境変数に簡単に分けられます。
また、ユーザー環境変数では、システムはまず ~/.bash_profile ファイルを読み取ります。ファイルが存在しない場合は、~/.bash_login を読み取ります。ファイルも存在しない場合は、~/.profile を読み取り、次にこれらのファイルの内容に基づいて ~/.bashrc を読み取ります。 Linux環境変数の読み込み順序をテストする方法 異なるファイルに対して環境変数がロードされる順序をテストするために、各環境変数定義ファイルの最初の行に同じ環境変数 UU_ORDER を定義します。この変数の値は、現在のファイル名に連結された独自の値です。 変更する必要があるファイルは次のとおりです。
各ファイルの最初の行に次のコードを追加し、コロンの後の内容を現在のファイルの絶対ファイル名に変更します。 エクスポート UU_ORDER="$UU_ORDER:~/.bash_profile" 変更後、保存し、新しいウィンドウを開いて、 uusama@ubuntu:~$ echo $UU_ORDER $UU_ORDER:/etc/environment:/etc/profile:/etc/bash.bashrc:/etc/profile.d/test.sh:~/.profile:~/.bashrc Linux が環境変数をロードする順序は次のようになると考えられます。
Linux環境変数ファイルの読み込みの詳細な説明 上記のテストから、Linux が環境変数をロードする順序は次のようになることが簡単にわかります。 システム環境変数 -> ユーザー定義環境変数
/etc/profile ファイルを開くと、このファイル内のコードが /etc/bash.bashrc ファイルを読み込み、次に /etc/profile.d/ ディレクトリ内の .sh ファイルを確認して読み込むことがわかります。 # /etc/profile: Bourne シェル (sh(1)) のシステム全体の .profile ファイル # および Bourne 互換シェル (bash(1)、ksh(1)、ash(1)、...)。 [ "$PS1" ]の場合; [ "$BASH" ] && [ "$BASH" != "/bin/sh" ] の場合、 # ファイル bash.bashrc ではすでにデフォルトの PS1 が設定されています。 # PS1='\h:\w\$' [ -f /etc/bash.bashrc ]の場合; . /etc/bash.bashrc フィ それ以外 [ "`id -u`" -eq 0 ]の場合; PS1='#' それ以外 PS1='$' フィ フィ フィ [ -d /etc/profile.d ]の場合; /etc/profile.d/*.sh の i に対して、 [ -r $i ]の場合; . $i フィ 終わり 設定解除 i フィ 次に、~/.profile ファイルを開くと、その中に ~/.bashrc ファイルが読み込まれていることがわかります。 # bashを実行している場合 if [ -n "$BASH_VERSION" ]; then # .bashrc が存在する場合はそれを含める [ -f "$HOME/.bashrc" ]の場合; . "$HOME/.bashrc" フィ フィ # ユーザーのプライベートbinディレクトリを含むようにPATHを設定します PATH="$HOME/bin:$HOME/.local/bin:$PATH" ~/.profile ファイル内のコードから、/.profile ファイルはユーザーがログインしたときに 1 回だけ読み取られ、/.bashrc はシェル スクリプトが実行されるたびに 1 回読み取られることがわかります。 いくつかのヒント 環境変数ファイルをカスタマイズできます。たとえば、特定のプロジェクトの下に また、alias コマンドを使用して、 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
<<: 本番環境でのMySQLパラメータsql_safe_updatesの使用に関する詳細な説明
>>: JavaScript でオブザーバー パターンを実装する方法
目次1. バックアップ1.1 万全の準備1.2 追加の準備2 バックアップとリカバリ2.1 データの...
目次背景問題の説明原因分析CPUクエリが遅い接続数分析する拡大する総括する背景新年を迎える前は、一年...
序文Vue(発音は /vjuː/、view に似ています)は、ユーザーインターフェイスを構築するため...
目次機能紹介関数関数の作成コンストラクタは関数を作成する関数宣言は関数を作成する関数式関数を作成する...
nginx で仮想ホスト vhost を設定すると非常に便利です。 nginx設定ファイルnginx...
この記事では、WeChatアプレットでジグソーパズルゲームを実装するための具体的なコードを参考までに...
httpsを取得する方法を勉強しています。最近、Tencent Cloud が提供する無料の SSL...
DockerでGit環境を構成する仕事上、Docker 環境で GitLab リポジトリを操作する必...
HTML についてどれくらい知っていますか? 現在、基本的な HTML コードを学習している場合は、...
クエリ書き換えプラグインMySQL 5.7.6 以降、MySQL Server は、サーバーが実行す...
この記事では、MySQL トリガーの定義と使用方法について説明します。ご参考までに、詳細は以下の通り...
問題の説明今日、ページ スタイルを変更していたときに、子要素にmargin-top設定したのに、子要...
目次1. 同時実行制御の概要1.1 フェーズ1 1.2 フェーズ2 1.3 フェーズ3 2. 同時実...
簡単に言えば、遅延レプリケーションとは、スレーブ データベースがマスター データベースより 1 時間...
複合インデックス (結合インデックスとも呼ばれます) は、複数の列に対して作成されるインデックスです...