可以利用ssh_config的配置實現。
關於該配置的詳細信息參考
$ man ssh_config
或者該處的詳細信息: ssh_config(5): OpenSSH SSH client config files
$ echo "
Host company
HostName 192.168.1.1
User work
" >> ~/.ssh/config
$ ssh company
上面的 >>
將以追加的方式寫入;使用>
寫入將會覆蓋裏面的內容。
~/.ssh/config 該處的文件只是當前用戶的配置文件
上述方法執行將會以work的用戶登錄IP爲192.168.1.1的機器。當然過程中需要輸入密碼。
爲防止該配置文件裏面有太多的服務器,一時間難以記住。寫了一個小腳本搭配使用,如下:
#!/bin/bash
############################################################################
# 列出目前個人用戶下面ssh_config裏面的所有主機
# 然後按照列出來的數字,登錄相應的服務器
# Gavin_Ma
# 2017-03-30
############################################################################
var=(`cat ~/.ssh/config`)
length=${#var[@]}
n=1
serverList=()
for ((i=1; i<$length; i+=6));
do
echo "$n: ${var[$i]} ---> ${var[$i+2]}"
str="${var[$i]}"
serverList=(${serverList[@]} "$str")
let "n+=1"
done
echo "Please enter number of server you want login: "
read serverNum
ssh ${serverList[$serverNum-1]}