known_hosts 内の 2 つのホスト名を修正する方法

known_hosts 内の 2 つのホスト名を修正する方法

を使ってホスト行を削除しようとしていssh-keygen -Rます。しかし、これを試みるたびに が表示されますzsh: no matches found:。known_hosts ファイルを見ると、変更したい行は次のように始まっています[slsapp.com]:1234,[108.163.203.146]:1234 ssh-dss。両方のホスト名で変更しようとしましたが、うまくいきませんでした。ssh-keygen -R [slsapp.com]:1234,[108.163.203.146]:1234

vim を使用したり直接変更したりするのは避けたいです。何か提案はありますか?

答え1

シェルは、内部の文字[...]を代替として解釈します。1つ文字。次の例を参照してください。

$ touch afoo bfoo cfoo dfoo
$ print -l [ac]foo
afoo
cfoo

したがって、シェルが特殊文字を解釈しないように、ホスト名を一重引用符で囲みます。

$ ssh-keygen -R '[slsapp.com]:1234'

関連情報