반응형
쉘 스크립트에서 중요한 정보를 환경 변수에 저장하고 스크립트에서 사용하는 방법
쉘 스크립트에서 중요한 정보를 안전하게 다루기 위해서는 환경 변수나 다른 안전한 방식을 사용해야 합니다. 환경 변수는 스크립트가 실행되는 환경에서 설정되는 변수로 민감한 정보를 저장하는 데 사용될 수 있습니다.
스크립트 내에서 환경 변수를 사용하는 예제
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
반응형
'스크립트' 카테고리의 다른 글
ICMP Ping 테스트를 수행하는 Python 스크립트 (0) | 2024.01.14 |
---|---|
쉘 스크립트에서 환경 변수를 설정하는 여러 가지 방법 (0) | 2023.11.20 |
쉘 스크립트의 명령행 인자(arguments)를 사용하는 방법 (0) | 2023.11.20 |
MHA master_ip_online_change 스크립트 수정 (0) | 2023.09.12 |
MHA master_ip_failover 스크립트 수정 (0) | 2023.09.12 |