我有一台在非标准端口上运行 SSH 的服务器。它在 8129 上运行,而不是 22。要登录,我使用:
ssh -p 8129 hostname
Run Code Online (Sandbox Code Playgroud)
现在,每当我需要为无密码登录设置密钥时,我必须复制公钥并将其手动添加到authorized_keys。我发现该命令ssh-copy-id
可用于简化此过程,但它似乎没有指定 ssh 服务器端口的选项。
有什么方法可以告诉ssh-copy-id
使用端口 8129,还是应该忘记这个命令并像以前一样手动复制/粘贴?
我正在解析一个邮箱文件,该文件存储未成功传送的电子邮件的电子邮件服务器报告。我希望提取错误的电子邮件地址,以便将它们从系统中删除。日志文件如下所示:
...some content...
The mail system
<slavicatomic118@hotmail.com>: host mx1.hotmail.com[65.54.188.94] said: 550
Requested action not taken: mailbox unavailable (in reply to RCPT TO
command)
...some content...
The mail system
<oki88@optimumpro.net>: host viking.optimumpro.net[79.101.51.82] said: 550
Unknown user (in reply to RCPT TO command)
...some content...
The mail system
<sigirna_luka@yahoo.com>: host mta5.am0.yahoodns.net[74.6.140.64] said: 554
delivery error: dd This user doesn't have a yahoo.com account
(sigirna_luka@yahoo.com) [0] - mta1172.mail.sk1.yahoo.com (in reply to end
of DATA command)
...etc.
Run Code Online (Sandbox Code Playgroud)
电子邮件地址位于“邮件系统”一行之后的 2 行。像这样使用 grep 给了我“邮件系统”行和接下来的两行:
grep -A …
Run Code Online (Sandbox Code Playgroud) 大多数最新的 Linux 发行版都将 bash 作为默认 shell,尽管还有其他(可以说)更好的 shell 可用。
我试图了解这是否是一些没有人想要改变的历史遗留物,或者是否有一些充分的理由使 bash 成为首选?