diff --git a/samples/templates/advanced.template.sh b/samples/templates/advanced.template.sh new file mode 100644 index 00000000..bb4f8f76 --- /dev/null +++ b/samples/templates/advanced.template.sh @@ -0,0 +1,17 @@ +file_path="$HOME/effective-shell/templates/advanced.template.sh" +env_var_names=$(env | sed -E -n 's/^([^=]+)(=.*)/\1/p') + +for env_var_name in ${env_var_names}; do + echo "Checking for '${env_var_name}'..." + + if grep -q "%${env_var_name}%" "${file_path}"; then + echo "-> Found '${env_var_name}', expanding now..." + + env_var_value="${!env_var_name}" + escaped_value=$(echo ${env_var_value} | sed -e 's/[\/&]/\\&/g') + + sed -e "s/%${env_var_name}%/${escaped_value}/" \ + "${file_path}" > "${file_path}.tmp" + mv "${file_path}.tmp" "${file_path}" + fi +done diff --git a/samples/templates/credentials.sh b/samples/templates/credentials.sh new file mode 100644 index 00000000..62e92704 --- /dev/null +++ b/samples/templates/credentials.sh @@ -0,0 +1,2 @@ +USERNAME=admin +PASSWORD=ThisIsVerySensitive! diff --git a/samples/templates/credentials.template.sh b/samples/templates/credentials.template.sh new file mode 100644 index 00000000..919b64bf --- /dev/null +++ b/samples/templates/credentials.template.sh @@ -0,0 +1,2 @@ +USERNAME=admin +PASSWORD=%PASSWORD%