テキストファイルの置換を実行するBashスクリプト

#!/usr/bin/env bash

# 以下のように実行されます
# history -c && echo "BASE64STRING==" | /path/to/script.sh

# これを指定しないと、スクリプトで何かエラーが発生しても
# 成功と報告する可能性があります。
set -o pipefail -e

IFS= read -r params
json=$(echo "$params" | base64 -d)

# JSONパーサーは組み込まれていません。
# JSONを解析するには、jqやfxのようなツールが必要です。
$( echo "$json" | jq -r 'keys[] as $k | "export \($k)=\(.[$k])"' )

# apache 2-utils(Ubuntu)やhttpd-tools(CentOS)のhtpasswdが必要です
# 注意: -cオプションはファイルを新規作成しますが、ファイルがすでに存在する場合は上書きして以前の内容を切り捨てます
htpasswd -b ~/path/to/pwdfile $user $newPassword

最終更新