我將用戶輸入的密碼傳遞給Elasticsearch插件的散列腳本,從中將輸出傳遞給sed以修改靜態auth文件。有時腳本失敗了,我的猜測是由於哈希輸出。關於代碼的任何建議,以改善這種情況並防止它偶爾失敗?請注意,SED命令會刪除原始散列密碼行,然後插入新密碼行。使用sed修改行,傳遞密碼散列變量
stty -echo
printf "Please enter a password for the admin user: "
read password
stty echo
printf "\n"
chmod +x /usr/share/elasticsearch/plugins/search-guard-5/tools/hash.sh
passwordhash=$(/usr/share/elasticsearch/plugins/search-guard-5/tools/hash.sh -p $password)
sed -i '4d' /usr/share/elasticsearch/plugins/search-guard-5/sgconfig/sg_internal_users.yml
sed -i "3 a\ \hash: $passwordhash" /usr/share/elasticsearch/plugins/search-guard-5/sgconfig/sg_internal_users.yml
_腳本如何偶爾失敗?請直接更新您的問題。 – mklement0