ハッシュされていないsshknown_hostsからホスト名を抽出する

ハッシュされていないsshknown_hostsからホスト名を抽出する

すべての(既知の)フォーマット条件で.ssh / known_hostsファイルからホスト名/ ipを抽出したいと思います。

  • ホスト名のみhostname pubkey
  • ホスト名とIP:hostname,1.1.1.1 pubkey
  • リバース以外のIPを使用するホスト名とカスタムポート:[hostname]:1234,[1.1.1.1]:1234 pubkey
  • ハッシュホストがある場合は安全に無視

答え1

awk -F'[ ,:]' '/^[0-9a-zA-Z]/{sub(/\[/,"",$1); sub(/\]/,"",$1); print $1}' ~/.ssh/known_hosts

関連情報