update script
This commit is contained in:
parent
ad97d0f11f
commit
01d4b1e947
53
update-keys.sh
Executable file
53
update-keys.sh
Executable file
@ -0,0 +1,53 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
WORK_DIR=`mktemp -d`
|
||||||
|
|
||||||
|
RED=`tput setaf 1`
|
||||||
|
GREEN=`tput setaf 10`
|
||||||
|
YELLOW=`tput setaf 11`
|
||||||
|
PURPLE=`tput setaf 13`
|
||||||
|
RESET=`tput sgr0`
|
||||||
|
|
||||||
|
fancy_echo() {
|
||||||
|
local fmt="$1"; shift
|
||||||
|
|
||||||
|
# shellcheck disable=SC2059
|
||||||
|
printf "\n$fmt\n" "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
# check if tmp dir was created
|
||||||
|
if [[ ! "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then
|
||||||
|
echo "Could not create temp dir"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# deletes the temp directory
|
||||||
|
function cleanup {
|
||||||
|
rm -rf "$WORK_DIR"
|
||||||
|
fancy_echo "${YELLOW}Deleted temp working directory $WORK_DIR${RESET}"
|
||||||
|
}
|
||||||
|
|
||||||
|
# register the cleanup function to be called on the EXIT signal
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
if [[ -f "$HOME/.ssh/authorized_keys" ]]; then
|
||||||
|
cp -u "$HOME/.ssh/authorized_keys" "$HOME/.ssh/authorized_keys.bak"
|
||||||
|
cp -u "$HOME/.ssh/authorized_keys" "$WORK_DIR/authorized_keys.tmp"
|
||||||
|
else
|
||||||
|
touch "$WORK_DIR/authorized_keys.tmp"
|
||||||
|
fi
|
||||||
|
|
||||||
|
ls "$WORK_DIR"
|
||||||
|
|
||||||
|
for file in ./*.pub
|
||||||
|
do
|
||||||
|
cat "$file" | tee -a "$WORK_DIR/authorized_keys.tmp"
|
||||||
|
done
|
||||||
|
|
||||||
|
# cp "$WORK_DIR/authorized_keys.tmp" "$WORK_DIR/authorized_keys.wip"
|
||||||
|
|
||||||
|
sort -u "$WORK_DIR/authorized_keys.tmp" > "$WORK_DIR/authorized_keys.wip"
|
||||||
|
|
||||||
|
# cat "$WORK_DIR/authorized_keys.wip"
|
||||||
|
|
||||||
|
cp "$WORK_DIR/authorized_keys.wip" "$HOME/.ssh/authorized_keys"
|
Loading…
Reference in New Issue
Block a user