diff options
author | Erich Eckner <git@eckner.net> | 2022-04-22 13:21:39 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2022-04-22 13:21:39 +0200 |
commit | efd3eb7da598daadbb40ca6f7221f86c852d5e72 (patch) | |
tree | 0b1965be922d2cd87d0978dac165204c3c30a1d0 | |
parent | 373d0ef7ae1a144d8f087ee2b2b1322d152c1bd2 (diff) | |
download | ssh-keystore-efd3eb7da598daadbb40ca6f7221f86c852d5e72.tar.xz |
scripts/gather-files überarbeitet
-rwxr-xr-x | scripts/gather-files | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/scripts/gather-files b/scripts/gather-files index 3dfaf14..e33d8dd 100755 --- a/scripts/gather-files +++ b/scripts/gather-files @@ -1,17 +1,14 @@ #!/bin/bash -if [ $# -ne 1 ] && [ $# -ne 2 ]; then +if [ $# -ne 1 ]; then >&2 echo 'usage: '"$0"' host' - >&2 echo 'usage: '"$0"' host ssh-alias' exit 1 fi cd "${0%/*}/.." -rm -rf --one-file-system "hosts/$1" -mkdir -p "hosts/$1" - ssh "${2:-$1}" -t 'su -c '"'"' + uname -n cut -d: -f1,6 \ </etc/passwd \ | tr ":" " " \ @@ -26,7 +23,14 @@ ssh "${2:-$1}" -t 'su -c '"'"' 2>/dev/null \ | tee /dev/stderr \ | sed 1d \ -| while read user key; do - printf '%s\n' "${key}" \ - >> "hosts/$1/${user}" -done +| tr -d '\r' \ +| { + read -r host + [ -z "${host}" ] && exit 1 + rm -rf --one-file-system "hosts/${host}" + mkdir -p "hosts/${host}" + while read user key; do + printf '%s\n' "${key}" \ + >> "hosts/${host}/${user}" + done +} |