운영 및 유지보수 리눅스 운영 및 유지 관리 리눅스 환경 변수를 구성하는 6가지 방법, 수집 추천!

리눅스 환경 변수를 구성하는 6가지 방법, 수집 추천!

Jan 06, 2022 pm 05:27 PM
linux

이 기사에서는 Linux에서 환경 변수를 구성하는 6가지 방법을 소개합니다.

리눅스 환경 변수를 구성하는 6가지 방법, 수집 추천!

Linux 환경 변수 구성

소프트웨어 설치를 사용자 정의할 때 환경 변수를 구성해야 하는 경우가 종종 있습니다. 다음은 환경 변수를 구성하는 다양한 방법입니다.

아래 모든 예제에 대한 환경 설명은 다음과 같습니다.

시스템: Ubuntu 14.0

사용자 이름: uusama

MySQL 환경 변수 구성 필요 경로: /home/uusama/mysql/bin

Linux는 환경 변수를 읽습니다.

환경 변수 읽는 방법:

  • export 명령은 현재 시스템에서 정의한 모든 환경 변수를 표시합니다.

  • echo $PATH 명령은 현재 PATH 환경 변수의 값을 출력합니다.

실행 효과 이 두 명령은 다음과 같습니다

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: 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를 생성할 수 있습니다.

이 방법은 시스템 구성을 수정하는 것이며 관리자 권한(예: 루트) 또는 파일에 대한 쓰기 권한이 필요합니다.

# 如果/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
로그인 후 복사

참고:

유효 시간: 새 터미널이 열릴 때 적용되거나 수동으로 /etc/profile을 소싱하여 적용합니다.

유효 기간: 영구적으로 유효

유효 범위: 모든 사용자에게 유효

Linux 환경 변수 구성 방법 6: vim /etc/environment

이 방법은 시스템 환경을 수정하는 것입니다. 구성 파일에는 관리자 권한이 필요하거나 쓰기가 필요합니다 파일에 대한 권한:

# 如果/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) 파일을 읽습니다. 해당 파일이 없으면 ~/.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视频教程

위 내용은 리눅스 환경 변수를 구성하는 6가지 방법, 수집 추천!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 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 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

VSCODE에 필요한 컴퓨터 구성 VSCODE에 필요한 컴퓨터 구성 Apr 15, 2025 pm 09:48 PM

대 코드 시스템 요구 사항 : 운영 체제 : Windows 10 이상, MacOS 10.12 이상, Linux 배포 프로세서 : 최소 1.6GHz, 권장 2.0GHz 이상의 메모리 : 최소 512MB, 권장 4GB 이상의 저장 공간 : 최소 250MB, 권장 1GB 및 기타 요구 사항 : 안정 네트워크 연결, Xorg/Wayland (LINUX)

VSCODE는 확장자를 설치할 수 없습니다 VSCODE는 확장자를 설치할 수 없습니다 Apr 15, 2025 pm 07:18 PM

VS 코드 확장을 설치하는 이유는 다음과 같습니다. 네트워크 불안정성, 불충분 한 권한, 시스템 호환성 문제, C 코드 버전은 너무 오래된, 바이러스 백신 소프트웨어 또는 방화벽 간섭입니다. 네트워크 연결, 권한, 로그 파일, 업데이트 대 코드 업데이트, 보안 소프트웨어 비활성화 및 대 코드 또는 컴퓨터를 다시 시작하면 점차 문제를 해결하고 해결할 수 있습니다.

Apr 16, 2025 pm 07:39 PM

메모장은 Java 코드를 직접 실행할 수는 없지만 다른 도구를 사용하여 명령 줄 컴파일러 (Javac)를 사용하여 Bytecode 파일 (filename.class)을 생성하면 달성 할 수 있습니다. Java Interpreter (Java)를 사용하여 바이트 코드를 해석하고 코드를 실행하고 결과를 출력하십시오.

Linux Architecture : 5 개의 기본 구성 요소를 공개합니다 Linux Architecture : 5 개의 기본 구성 요소를 공개합니다 Apr 20, 2025 am 12:04 AM

Linux 시스템의 5 가지 기본 구성 요소는 다음과 같습니다. 1. Kernel, 2. System Library, 3. System Utilities, 4. 그래픽 사용자 인터페이스, 5. 응용 프로그램. 커널은 하드웨어 리소스를 관리하고 시스템 라이브러리는 사전 컴파일 된 기능을 제공하며 시스템 유틸리티는 시스템 관리에 사용되며 GUI는 시각적 상호 작용을 제공하며 응용 프로그램은 이러한 구성 요소를 사용하여 기능을 구현합니다.

vScode를 Mac에 사용할 수 있습니다 vScode를 Mac에 사용할 수 있습니다 Apr 15, 2025 pm 07:36 PM

VS 코드는 Mac에서 사용할 수 있습니다. 강력한 확장, GIT 통합, 터미널 및 디버거가 있으며 풍부한 설정 옵션도 제공합니다. 그러나 특히 대규모 프로젝트 또는 고도로 전문적인 개발의 경우 VS 코드는 성능 또는 기능 제한을 가질 수 있습니다.

vscode를 사용하는 방법 vscode를 사용하는 방법 Apr 15, 2025 pm 11:21 PM

Visual Studio Code (VSCODE)는 Microsoft가 개발 한 크로스 플랫폼, 오픈 소스 및 무료 코드 편집기입니다. 광범위한 프로그래밍 언어에 대한 가볍고 확장 성 및 지원으로 유명합니다. VSCODE를 설치하려면 공식 웹 사이트를 방문하여 설치 프로그램을 다운로드하고 실행하십시오. VScode를 사용하는 경우 새 프로젝트를 만들고 코드 편집, 디버그 코드, 프로젝트 탐색, VSCODE 확장 및 설정을 관리 할 수 ​​있습니다. VSCODE는 Windows, MacOS 및 Linux에서 사용할 수 있으며 여러 프로그래밍 언어를 지원하며 Marketplace를 통해 다양한 확장을 제공합니다. 이점은 경량, 확장 성, 광범위한 언어 지원, 풍부한 기능 및 버전이 포함됩니다.

git의 창고 주소를 확인하는 방법 git의 창고 주소를 확인하는 방법 Apr 17, 2025 pm 01:54 PM

git 저장소 주소를 보려면 다음 단계를 수행하십시오. 1. 명령 줄을 열고 리포지토리 디렉토리로 이동하십시오. 2. "git remote -v"명령을 실행하십시오. 3. 출력 및 해당 주소에서 저장소 이름을 봅니다.

VScode 란 무엇입니까? VScode 란 무엇입니까? Apr 15, 2025 pm 06:45 PM

VS Code는 Full Name Visual Studio Code로, Microsoft가 개발 한 무료 및 오픈 소스 크로스 플랫폼 코드 편집기 및 개발 환경입니다. 광범위한 프로그래밍 언어를 지원하고 구문 강조 표시, 코드 자동 완료, 코드 스 니펫 및 스마트 프롬프트를 제공하여 개발 효율성을 향상시킵니다. 풍부한 확장 생태계를 통해 사용자는 디버거, 코드 서식 도구 및 GIT 통합과 같은 특정 요구 및 언어에 확장을 추가 할 수 있습니다. VS 코드에는 코드에서 버그를 신속하게 찾아서 해결하는 데 도움이되는 직관적 인 디버거도 포함되어 있습니다.

See all articles