MST
星途 面试题库

面试题:Bash脚本在持续集成中的环境变量处理

假设你正在为一个基于Python的项目搭建持续集成环境,使用Bash脚本。项目依赖于一些特定的环境变量,如 `API_KEY`、`DB_CONNECTION_STRING` 等。请编写一个Bash脚本,该脚本能够从一个 `.env` 文件中读取这些环境变量,并在持续集成构建过程中正确设置它们,同时确保对敏感信息(如 `API_KEY`)的安全处理,避免在日志中明文显示。
26.8万 热度难度
编程语言Bash

知识考点

AI 面试

面试题答案

一键面试
#!/bin/bash

# 检查.env文件是否存在
if [ -f .env ]; then
    # 读取.env文件内容
    while IFS='=' read -r key value; do
        # 跳过空行和注释行
        if [[ -n "$key" && "$key" != \#* ]]; then
            # 处理敏感信息,不直接输出到日志
            if [[ "$key" == "API_KEY" ]]; then
                export "$key"="$value"
            else
                echo "Setting environment variable: $key=$value"
                export "$key"="$value"
            fi
        fi
    done < .env
else
    echo ".env file not found."
fi