본문 바로가기

스크립트

쉘 스크립트에서 중요한 정보를 환경 변수에 저장하고 스크립트에서 사용하는 방법

반응형

쉘 스크립트에서 중요한 정보를 환경 변수에 저장하고 스크립트에서 사용하는 방법

쉘 스크립트에서 중요한 정보를 안전하게 다루기 위해서는 환경 변수나 다른 안전한 방식을 사용해야 합니다. 환경 변수는 스크립트가 실행되는 환경에서 설정되는 변수로 민감한 정보를 저장하는 데 사용될 수 있습니다.

스크립트 내에서 환경 변수를 사용하는 예제

1. 스크립트 편집

vim myscript.sh
#!/bin/bash

# 환경 변수에서 중요 정보 가져오기
USERNAME=$MY_SECRET_USERNAME
PASSWORD=$MY_SECRET_PASSWORD

# 가져온 정보 사용
echo "사용자 이름: $USERNAME"
echo "비밀번호: $PASSWORD"
chmod +x myscript.sh

 

2. 환경 변수 설정

  • 실행 시 환경 변수 설정
    • 매번 스크립트를 실행할 때마다 환경 변수를 설정하고 스크립트를 실행할 수 있습니다.
export MY_SECRET_USERNAME="user123"
export MY_SECRET_PASSWORD="password123"
  • 프로파일 파일에 환경 변수 추가
    • 프로파일 파일에 환경 변수 추가 영속적으로 환경 변수를 설정하려면 프로파일 파일에 변수를 추가할 수 있습니다. 예를 들어, ~/.bashrc 또는 ~/.bash_profile 파일에 추가합니다.
vim ~/.bashrc
export MY_SECRET_USERNAME="your_username"
export MY_SECRET_PASSWORD="your_password"
source ~/.bashrc

 

3. 스크립트 실행

./myscript.sh
$ ./myscript.sh                          
사용자 이름: user123
비밀번호: password123
728x90

.env 파일에서 환경 변수를 가져와서 사용하는 예제

.env 파일은 스크립트가 실행되는 디렉토리에 위치하고 스크립트에서는 해당 파일을 읽어 환경 변수를 설정합니다.

 

1. myscript.sh 파일 편집

vim myscript.sh
#!/bin/bash

# .env 파일 로드
if [ -f .env ]; then
  source .env
  echo "환경 변수가 로드되었습니다."
else
  echo ".env 파일을 찾을 수 없습니다."
  exit 1
fi

# 가져온 정보 사용
echo "사용자 이름: $MY_SECRET_USERNAME"
echo "비밀번호: $MY_SECRET_PASSWORD"
chmod +x myscript.sh

 

2. .env 파일 편집

.env 파일을 읽어 환경 변수로 설정하고 설정된 환경 변수를 사용하여 정보를 출력합니다.

vim .env
MY_SECRET_USERNAME=envfileuser123
MY_SECRET_PASSWORD=envfilepasswd123

 

3. 스크립트 실행

스크립트가 실행될 때 .env 파일에서 설정한 환경 변수를 사용할 수 있습니다.

./myscript.sh
$ ./myscript.sh
환경 변수가 로드되었습니다.
사용자 이름: envfileuser123
비밀번호: envfilepasswd123

 

주의: 중요한 정보는 보안을 고려하여 안전한 방식으로 다뤄져야 합니다. 민감한 정보는 안전한 저장 방식으로 보호되어야 하며, .env 파일이나 다른 설정 파일은 액세스 권한을 제한하여 보안을 강화할 수 있습니다.

 

728x90
반응형