diff --git a/action.sh b/action.sh index 752e0db..1fa534a 100755 --- a/action.sh +++ b/action.sh @@ -167,6 +167,21 @@ if [ "$ACTION" == "changepw" ]; then mailsend "Email password changed" \ "An Email account password has been changed." \ "User: $USER | New Password: $PASS" + + # Update datasheet (delete entry in Email section and add a new one with the new password) + # In fact a combination of deluser and adduser + LEAD='## > EMAIL' + TAIL='## < EMAIL' + + # Extract Mail part | exclude LEAD and TAIL | delete user + sed -n "/$LEAD/,/$TAIL/ p" $NOTES | grep -v "$LEAD\|$TAIL" | sed "/User:[ \t]*$USER$/,+2d" > $NOTESTMP + # Put edited part in between $LEAD and $TAIL again + sed -i "/$LEAD/,/$TAIL/{ /$LEAD/{p; r $NOTESTMP + }; /$TAIL/p; d }" $NOTES + rm $NOTESTMP + # Update datasheet (add new entry in Email section) + TAIL='## < EMAIL' + sed -i "/$TAIL/i User: $USER\nPass: $PASS\n" $NOTES fi fi # /changepw