mac terminal自动登录服务器

终端的ssh是标准的OpenSSH client

如果需要克隆会话功能,可以通过配置打开。

$ cat .ssh/config

Host *
ControlMaster auto
ControlPath ~/.ssh/%h-%p-%r
ControlPersist yes

这样每连上一个服务器都会自动在~/.ssh/下创建一个socket文件,下次用相同用户名、端口、主机名进行连接就会自动复用

===================

利用上面的特性,就可以实现二次登录免密码输入功能,再写个定制脚本,简化 ssh -p $port $user@$host 命令的执行,就能实现ssh快速登录服务器了。果然是自己动手,丰衣足食啊。

比如:myssh 241

cat myssh

#!/usr/bin/env bash
hostName=$1
port=$2
user=$3

if [ "$hostName" = "" ]
then
  echo "usage: $0 hostName [port [user]]"
  exit 1
fi

hostPref="10."

host=`echo $hostName | awk -F"." '{for(i=1;i<=4-NF;i++){ printf(hostPref);} printf($0);}' hostPref="$hostPref"`
if [ "$port" = "" ]
then
  port=16888
fi

if [ "$user" = "" ]
then
   user="denishuang"
fi

ssh -p $port $user@$host

===================

后来我用惯了Command + Shift + N(新开命令)后,上面这个脚本也就不用了,加上Command+Ctrl+T和 Command +(1,2,3,4....)后 ,发现terminal还是比SecureCRT爽多了。

登录过后,scp也不用重复输入密码了。 rz命令在一定程度上退休了。

Comments