ホームページ 運用・保守 Linuxの運用と保守 Linuxの環境変数を設定する6つの方法、まとめてみるのがおすすめ!

Linuxの環境変数を設定する6つの方法、まとめてみるのがおすすめ!

Jan 06, 2022 pm 05:27 PM
linux

この記事では、Linux で環境変数を設定する 6 つの方法を紹介します。

Linuxの環境変数を設定する6つの方法、まとめてみるのがおすすめ!

#Linux 環境変数の構成

ソフトウェアのインストールをカスタマイズする場合、多くの場合、環境変数の構成が必要になります。 , 環境変数のさまざまな設定方法を以下に示します。

以下のすべての例の環境説明は次のとおりです。

システム: Ubuntu 14.0

ユーザー名: uusama

MySQL 環境を構成する必要があります。変数パス:/home/uusama/mysql/bin

#Linux 環境変数の読み取り#環境変数の読み取り方法:

export コマンドは、現在のシステムによって定義されているすべての環境変数を表示します。
  • echo $PATH コマンドは、現在の PATH 環境変数の値を出力します。
  • これ 2 つのコマンドを実行すると、次のような効果が得られます。
  • uusama@ubuntu:~export
    declare -x HOME="/home/uusama"
    declare -x LANG="en_US.UTF-8"
    declare -x LANGUAGE="en_US:"
    declare -x LESSCLOSE="/usr/bin/lesspipe %s %s"
    declare -x LESSOPEN="| /usr/bin/lesspipe %s"
    declare -x LOGNAME="uusama"
    declare -x MAIL="/var/mail/uusama"
    declare -x PATH="/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
    declare -x SSH_TTY="/dev/pts/0"
    declare -x TERM="xterm"
    declare -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:export PATH

export コマンドを使用して PATH の値を直接変更し、MySQL が次の値を入力するように設定します。環境変数:

export PATH=/home/uusama/mysql/bin:PATH
# 或者把PATH放在前面
export PATH=PATH:/home/uusama/mysql/bin
ログイン後にコピー

注:

有効期間: 即時有効

有効期間: 現在の端末で有効、ウィンドウを閉じると無効

有効範囲: 現時点のみ 元の構成

## が上書きされないように、元の構成 ($PATH 部分) をユーザーの有効な

# 構成済み環境変数に忘れずに追加してください。

#Linux 環境変数の設定方法 2: vim ~/.bashrc

ユーザー ディレクトリの ~/.bashrc ファイルを変更して設定します:

vim ~/.bashrc
# 在最后一行加上
export PATH=$PATH:/home/uusama/mysql/bin
ログイン後にコピー
注意:

有効期間: 同じユーザーで新しいターミナルを開いたとき、または手動で ~/.bashrc をソースしたときに有効になります

#有効期間: 永久に有効

有効範囲:現在のユーザーに対してのみ有効

後続の環境変数読み込みファイルでPATH定義が上書きされると有効にならない可能性があります

Linux環境変数設定方法3 : vim ~/.bash_profile

~/.bashrc ファイルの変更と同様に、ファイルの末尾に新しいパスを追加する必要もあります:

vim ~/.bash_profile
# 在最后一行加上
export PATH=$PATH:/home/uusama/mysql/bin
ログイン後にコピー
注:

有効期間: 新しいファイルを開くには同じユーザーを使用します。ターミナルを使用するか、/.bash_profile を手動でソースして有効にするときに有効になります。

有効期間: 永続的に有効です

有効範囲: 現在のユーザーに対してのみ有効です

/.bash_profile ファイルがない場合は、~/.profile ファイルを編集するか、新しい

Linux 環境変数設定方法 4: vim /etc/bashrc

この方法は、システム設定を変更するには、管理者権限 (root など) またはファイルへの書き込み権限が必要です。

# 如果/etc/bashrc文件不可编辑,需要修改为可编辑
chmod -v u+w /etc/bashrc
vim /etc/bashrc
# 在最后一行加上
export PATH=$PATH:/home/uusama/mysql/bin
ログイン後にコピー
注:

有効期間: 新しいターミナルを開いて有効にするか、手動で /etc /bashrc をソースとして有効にします

有効期間: 永続的に有効

有効範囲: すべてのユーザーに有効

Linux 環境変数の構成方法 5: vim /etc/ profile

このメソッドはシステム構成を変更しますこれは、vim /etc/bashrc に似ています:

# 如果/etc/profile文件不可编辑,需要修改为可编辑
chmod -v u+w /etc/profile
vim /etc/profile
# 在最后一行加上
export PATH=$PATH:/home/uusama/mysql/bin
ログイン後にコピー
Notes:

有効時間: 新しいターミナルを開いたとき、または手動でソースを作成したときに有効になります。 /etc/profile

有効期間:永続

有効範囲:全ユーザー有効

#Linux環境変数設定方法6:vim /etc/環境

このメソッドは、システム環境設定ファイルを変更するものであり、管理者権限またはファイルへのアクセス許可が必要です。書き込み権限:

# 如果/etc/bashrc文件不可编辑,需要修改为可编辑
chmod -v u+w /etc/environment
vim /etc/profile
# 在最后一行加上
export PATH=$PATH:/home/uusama/mysql/bin注意事项:
ログイン後にコピー
有効期限: 有効になるタイミング新しいターミナルを開くか、手動でソース /etc/environment 有効期間: 永続的

有効範囲: すべてのユーザー 有効

Linux 環境変数ロード原理分析

環境変数のさまざまな構成方法は上にリストされていますが、Linux はこれらの構成をどのようにロードするのでしょうか?どのような順序でロードされますか? 特定のロード順序により、同じ名前の環境変数定義が上書きされたり、有効にならなくなったりします。

環境変数の分類

環境変数は、ユーザー定義の環境変数とシステム レベルの環境変数に簡単に分けることができます。 ユーザーレベルの環境変数定義ファイル: /.bashrc、/.profile (一部のシステムは: /.bash_profile) システムレベルの環境変数定義ファイル: /etc/bashrc、/ etc/ profile (一部のシステムは /etc/bash_profile)、/etc/environment

さらに、ユーザー環境変数では、システムは最初に /.bash_profile (または ~/.profile) ファイルを読み取ります。そのようなファイルがない場合は、~/.bash_login を読み取り、これらのファイルの内容に基づいて ~/.bashrc を読み取ります。

Linux 環境変数のロード順序をテストする方法

为了测试各个不同文件的环境变量加载顺序,我们在每个环境变量定义文件中的第一行都定义相同的环境变量UU_ORDER,该变量的值为本身的值连接上当前文件名称。

需要修改的文件如下:

  • /etc/environment

  • /etc/profile

  • /etc/profile.d/test.sh,新建文件,没有文件夹可略过

  • /etc/bashrc,或者/etc/bash.bashrc

  • /.bash_profile,或者/.profile

  • ~/.bashrc

在每个文件中的第一行都加上下面这句代码,并相应的把冒号后的内容修改为当前文件的绝对文件名。

export UU_ORDER="$UU_ORDER:~/.bash_profile"
ログイン後にコピー

修改完之后保存,新开一个窗口,然后echo $UU_ORDER观察变量的值:

uusama@ubuntu:~echoUU_ORDER
$UU_ORDER:/etc/environment:/etc/profile:/etc/bash.bashrc:/etc/profile.d/test.sh:~/.profile:~/.bashrc
ログイン後にコピー

可以推测出Linux加载环境变量的顺序如下:

/etc/environment

/etc/profile

/etc/bash.bashrc

/etc/profile.d/test.sh

~/.profile

~/.bashrc

Linux环境变量文件加载详解

由上面的测试可容易得出Linux加载环境变量的顺序如下,:

系统环境变量 -> 用户自定义环境变量 /etc/environment -> /etc/profile -> ~/.profile

打开/etc/profile文件你会发现,该文件的代码中会加载/etc/bash.bashrc文件,然后检查/etc/profile.d/目录下的.sh文件并加载。

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "PS1" ]; then
  if [ "BASH" ] && [ "BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1=' '
    fi
  fi
fi
if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r i ]; then
      .i
    fi
  done
  unset i
fi
ログイン後にコピー

其次再打开~/.profile文件,会发现该文件中加载了~/.bashrc文件。

# if running bash
if [ -n "BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "HOME/.bashrc" ]; then
    . "HOME/.bashrc"
    fi
fi
# set PATH so it includes user's private bin directories
PATH="HOME/bin:HOME/.local/bin:PATH"
ログイン後にコピー

从~/.profile文件中代码不难发现,/.profile文件只在用户登录的时候读取一次,而/.bashrc会在每次运行Shell脚本的时候读取一次。

一些小技巧

可以自定义一个环境变量文件,比如在某个项目下定义uusama.profile,在这个文件中使用export定义一系列变量,然后在~/.profile文件后面加上:sourc uusama.profile,这样你每次登陆都可以在Shell脚本中使用自己定义的一系列变量。

也可以使用alias命令定义一些命令的别名,比如alias rm="rm -i"(双引号必须),并把这个代码加入到~/.profile中,这样你每次使用rm命令的时候,都相当于使用rm -i命令,非常方便。

相关推荐:《Linux视频教程

以上がLinuxの環境変数を設定する6つの方法、まとめてみるのがおすすめ!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CentosとUbuntuの違い CentosとUbuntuの違い Apr 14, 2025 pm 09:09 PM

Centosとubuntuの重要な違いは次のとおりです。起源(CentosはRed Hat、for Enterprises、UbuntuはDebianに由来します。個人用のDebianに由来します)、パッケージ管理(CentosはYumを使用し、安定性に焦点を当てます。チュートリアルとドキュメント)、使用(Centosはサーバーに偏っています。Ubuntuはサーバーやデスクトップに適しています)、その他の違いにはインストールのシンプルさが含まれます(Centos is Thin)

Centosをインストールする方法 Centosをインストールする方法 Apr 14, 2025 pm 09:03 PM

Centosのインストール手順:ISO画像をダウンロードし、起動可能なメディアを燃やします。起動してインストールソースを選択します。言語とキーボードのレイアウトを選択します。ネットワークを構成します。ハードディスクをパーティション化します。システムクロックを設定します。ルートユーザーを作成します。ソフトウェアパッケージを選択します。インストールを開始します。インストールが完了した後、ハードディスクから再起動して起動します。

メンテナンスを停止した後のCentosの選択 メンテナンスを停止した後のCentosの選択 Apr 14, 2025 pm 08:51 PM

Centosは廃止されました、代替品には次のものが含まれます。1。RockyLinux(最高の互換性)。 2。アルマリン(Centosと互換性); 3。Ubuntuサーバー(設定が必要); 4。RedHat Enterprise Linux(コマーシャルバージョン、有料ライセンス); 5。OracleLinux(CentosとRhelと互換性があります)。移行する場合、考慮事項は次のとおりです。互換性、可用性、サポート、コスト、およびコミュニティサポート。

Dockerデスクトップの使用方法 Dockerデスクトップの使用方法 Apr 15, 2025 am 11:45 AM

Dockerデスクトップの使用方法は? Dockerデスクトップは、ローカルマシンでDockerコンテナを実行するためのツールです。使用する手順には次のものがあります。1。Dockerデスクトップをインストールします。 2。Dockerデスクトップを開始します。 3。Docker Imageを作成します(DockerFileを使用); 4. Docker画像をビルド(Docker Buildを使用); 5。Dockerコンテナを実行します(Docker Runを使用)。

Dockerの原則の詳細な説明 Dockerの原則の詳細な説明 Apr 14, 2025 pm 11:57 PM

DockerはLinuxカーネル機能を使用して、効率的で孤立したアプリケーションランニング環境を提供します。その作業原則は次のとおりです。1。ミラーは、アプリケーションを実行するために必要なすべてを含む読み取り専用テンプレートとして使用されます。 2。ユニオンファイルシステム(UnionFS)は、違いを保存するだけで、スペースを節約し、高速化する複数のファイルシステムをスタックします。 3.デーモンはミラーとコンテナを管理し、クライアントはそれらをインタラクションに使用します。 4。名前空間とcgroupsは、コンテナの分離とリソースの制限を実装します。 5.複数のネットワークモードは、コンテナの相互接続をサポートします。これらのコア概念を理解することによってのみ、Dockerをよりよく利用できます。

Centosがメンテナンスを停止した後の対処方法 Centosがメンテナンスを停止した後の対処方法 Apr 14, 2025 pm 08:48 PM

CentOSが停止した後、ユーザーは次の手段を採用して対処できます。Almalinux、Rocky Linux、Centosストリームなどの互換性のある分布を選択します。商業分布に移行する:Red Hat Enterprise Linux、Oracle Linuxなど。 Centos 9ストリームへのアップグレード:ローリングディストリビューション、最新のテクノロジーを提供します。 Ubuntu、Debianなど、他のLinuxディストリビューションを選択します。コンテナ、仮想マシン、クラウドプラットフォームなどの他のオプションを評価します。

Docker画像が失敗した場合はどうすればよいですか Docker画像が失敗した場合はどうすればよいですか Apr 15, 2025 am 11:21 AM

障害のあるDocker画像ビルドのトラブルシューティング手順:DockerFileの構文と依存関係バージョンを確認します。ビルドコンテキストに必要なソースコードと依存関係が含まれているかどうかを確認します。エラーの詳細については、ビルドログを表示します。 -targetオプションを使用して、階層フェーズを構築して障害点を識別します。 Dockerエンジンの最新バージョンを使用してください。 -t [image-name]:デバッグモードで画像を作成して、問題をデバッグします。ディスクスペースを確認し、十分であることを確認してください。 Selinuxを無効にして、ビルドプロセスへの干渉を防ぎます。コミュニティプラットフォームに助けを求め、DockerFilesを提供し、より具体的な提案のためにログの説明を作成します。

VSCODEに必要なコンピューター構成 VSCODEに必要なコンピューター構成 Apr 15, 2025 pm 09:48 PM

VSコードシステムの要件:オペレーティングシステム:オペレーティングシステム:Windows 10以降、MACOS 10.12以上、Linux Distributionプロセッサ:最小1.6 GHz、推奨2.0 GHz以上のメモリ:最小512 MB、推奨4 GB以上のストレージスペース:最低250 MB以上:その他の要件を推奨:安定ネットワーク接続、XORG/WAYLAND(Linux)

See all articles