#!/bin/sh keys= for x in $HOME/.ssh/*.pub; do if [ -s "$x" ]; then keys="$keys $x" else rm "$x" fi done ak="$HOME/.ssh/authorized_keys" if [ -s "$ak" ]; then while read l; do found= for k in $keys; do read l2 < $k || true if [ "$l" = "$l2" ]; then found=yes echo "$l" break fi done if [ -z "$found" ]; then name="$(echo "$l" | cut -d' ' -f3)" if [ -n "$name" ]; then echo "$l" > .ssh/$name.pub fi fi done < $ak > $ak~ else touch $ak for x in amery@geeks.cl \ amery@builder.geeks.cl \ amery@shell.easy-cloud.net; do x="$HOME/.ssh/$x.pub" [ -s "$x" ] || continue cat "$x" done > $ak~ fi if ! cmp $ak $ak~; then diff -u $ak $ak~ || true mv $ak~ $ak fi