bash 명령에 여러 환경 변수를 설정하는 방법


108

명령을 실행하기 전에 EC2_HOME 및 JAVA_HOME 변수를 설정해야합니다 (ec2-describe-regions).

한 번에 어떻게합니까?

답변:


164

명령 앞에 명령 줄에 배치하여 단일 명령에 대해 일회성 변수를 설정할 수 있습니다.

$ EC2_HOME=/path/to/dir JAVA_HOME=/other/path ec2-describe-regions

또는 환경에서 내보낼 수 있으며,이 경우 이후의 모든 명령에 대해 설정됩니다.

$ export EC2_HOME=/path/to/dir
$ export JAVA_HOME=/other/path
$ ec2-describe-regions

7
드물게 보이지만 export EC2_HOME=/path JAVA_HOME=/path.
윌리엄 Pursell

4
일회성 옵션은 스크립트에서 매우 유용합니다. 루트 또는 다른 사용자로 명령을 실행해야하는 사람을위한 참고 사항입니다. 변수는 sudo 또는 사용자 뒤에 와야 합니다. 예를 들어sudo -u somebody CVSROOT=:ext:somebody@12.18.127.22:/usr/local/ncvs CVS_RSH=ssh cvs co my/dir/ancient-file.py
Nagev

prepending을 통해 제공 할 수있는 변수 수에 제한이 있습니까?
Sam Thomas

Linux에서는 상당히 큰 최대 명령 줄 길이 제한입니다.
Chris Dodd

2

다른 * nix 시스템과 마찬가지로 HOME 디렉토리의 .bashrc 파일에 다음과 같은 기능을 추가 할 수 있습니다.

function startec2(){
    EC2_HOME=/path/to/dir
    JAVA_HOME=/other/path 
    ec2-describe-regions
}

이제 다음 명령으로 프로그램을 시작할 수 있습니다.

startec2

4
내가 아는 한 이것은 bash 변수 만 생성하고 작동하지 않습니다.
TNW
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.