alias server.domain.com='ssh 192.168.1.1@user1 '
alias server1.domain.com='ssh user2 @192.168.1.1'
alias server1.domain.com='ssh user3@192.168.1.1'
In the above lines, last line is the correct format. The first is IP@username, has got a space after the user1. In the second entry, there is space after user2. If its IP@user, it should be user@IP after the sed/awk operation.
$ sed "s/ *@/@/;s/\(\([0-9]\{1,\}.\{0,1\}\)\{4\}\)@\([^ ']*\)/\3@\1/" file
alias server.domain.com='ssh user1@192.168.1.1 '
alias server1.domain.com='ssh user2@192.168.1.1'
alias server1.domain.com='ssh user3@192.168.1.1'
cat one
alias server.domain.com='ssh 192.168.1.1@user1 '
alias server1.domain.com='ssh user2 @192.168.1.1'
alias server1.domain.com='ssh user3@192.168.1.1'
awk -F'=' '{gsub(/ /,X,$2);gsub("ssh","& ",$2);print $0}' one
alias server.domain.com 'ssh 192.168.1.1@user1'
alias server1.domain.com 'ssh user2@192.168.1.1'
alias server1.domain.com 'ssh user3@192.168.1.1'
awk -F'=' '{q="\047";gsub(/[\047 ]|ssh/,X,$2);split($2,S,"@");if (S[2] !~ /^[0-9]/){t=S[2];S[2]=S[1];S[1]=t};print $1,FS,q,"ssh ",S[1],"@",S[2],q}' OFS="" one
alias server.domain.com='ssh user1@192.168.1.1'
alias server1.domain.com='ssh user2@192.168.1.1'
alias server1.domain.com='ssh user3@192.168.1.1'