Category:
Linux
ちょっと必要に迫られて、ユーザの ssh の公開鍵を連続で消すシェルスクリプトを書いた。
Syntax: ./ssh_authkey_del.sh user1 user2 ...
ssh_authkey_del.sh
最初色々考えていたときに「あるユーザが存在するかどうかを確認する方法」を検討していたのですが(これを調べるのに時間が掛かった)、必要ないことに気づいて消しました。
こんなアプローチ。後で必要になったときのために、自分用メモとして残しておきます(もっといい方法があるかも)。
Syntax: ./ssh_authkey_del.sh user1 user2 ...
ssh_authkey_del.sh
#!/bin/shこの 6 行を書くのに 30 分くらい掛かった気がするので、きっと手動で消したほうが早かったけど・・・
for un in $*
do
echo -n "$un: ";
su -c "rm ~/.ssh/authorized_keys" - $un;
done
最初色々考えていたときに「あるユーザが存在するかどうかを確認する方法」を検討していたのですが(これを調べるのに時間が掛かった)、必要ないことに気づいて消しました。
こんなアプローチ。後で必要になったときのために、自分用メモとして残しておきます(もっといい方法があるかも)。
id $un &> /dev/null;目指せ Mac + Windows + Linux の三刀流!(それでも Mac が 1 番目なのはご愛嬌...)
if [ $? -ne 0 ]; then
echo "$un: No such user";
else
echo "$un: User exists";
fi
RSS