#!/usr/bin/env bash set -euo pipefail env_file='.env' if [[ ! -f $env_file ]]; then echo "Error: $env_file not found in the current directory." >&2 return 1 2>/dev/null || exit 1 fi while IFS= read -r line || [[ -n $line ]]; do line="${line#"${line%%[![:space:]]*}"}" line="${line%"${line##*[![:space:]]}"}" [[ -z $line || $line == \#* ]] && continue [[ $line != *"="* ]] && continue key="${line%%=*}" value="${line#*=}" if [[ ( $value == \"*\" && $value == *\" ) || ( $value == \'*\' && $value == *\' ) ]]; then value="${value:1:-1}" fi export "$key"="$value" echo "Exported $key" done < "$env_file"