如何从Windows到Ubuntu(不动声色的变迁)

2020-02-03 14:09:25王旭

echo "Usage: ssh-add-pass passfile" exit 1
fi
pass=$(cat $1) for SSH_AUTH_SOCK in /tmp/ssh-*/agent.*; do if [ -S $SSH_AUTH_SOCK ]; then
# ssh-add -l &>/dev/null && echo export SSH_AUTH_SOCK=$SSH_AUTH_SOCK
# $(export SSH_AUTH_SOCK=$SSH_AUTH_SOCK)
exit 0 else eval $(ssh-agent)
fi
done</p> <p># 这里的spawn后面接的私钥,只能使用绝对路径.否则会报找不到文件.
# spawn ssh-add xxx_rsa
expect << EOF
spawn ssh-add xxx_rsa</p> <p> expect "Enter passphrase" send "$passr" expect eof
EOF

passfile
密码文件
ssh-attach


复制代码
#!/bin/bash</p> <p># reference:
# https://github.com/jianingy/trash/blob/master/tools/ssh-attach # find if ssh-add and ssh-agent exists for prog in ssh-add ssh-agent; do which $prog >/dev/null || exit
done for SSH_AUTH_SOCK in /tmp/ssh-*/agent.*; do [ -S $SSH_AUTH_SOCK ] && ssh-add -l &>/dev/null && echo export SSH_AUTH_SOCK=$SSH_AUTH_SOCK && exit 0
done</p> <p># try again by prompting user to input passpharses.
create_new_agent=1 for SSH_AUTH_SOCK in /tmp/ssh-*/agent.*; do if [ -S $SSH_AUTH_SOCK ]; then
create_new_agent=0
ssh-add xxx_rsa || continue ssh-add -l &>/dev/null && echo export SSH_AUTH_SOCK=$SSH_AUTH_SOCK && exit 0
fi
done</p> <p># create new ssh-agent and run again
# echo "no avaiable ssh-agent, starting a new one" >&2 if [ $create_new_agent -eq 1 ]
then
ssh-agent &>/dev/null exec $0 $@
fi</p> <p>exit 1</p> <p># vim: ts=4 sw=4 et ai

参考命令
显示所有的key
ssh-add -l
删除所有的key
ssh-add -D
删除所有的ssh-agent
killall ssh-agent

自动登录MySQL
核心:qmysql.py脚本

1、获取方法
git clone http://xxx
2、使用方法
把脚本放到~/bin目录下
 本地保存mysql密码
首次执行生成~/bin/qmysql.py生成~/.qmysql.ini文件,分别填上连接线上数据库的用户名/密码/线上主机的密码
3、修改~/.profile,增加自动主机名补全功能
意思是qmysql.py脚本的自动补全由_ssh函数完成.
# Auto-Comple
complete -F _ssh qmysql.py
3、使用
qmysql l-dbc 按tab自动补全 -P port, 默认3306

RTX
前言:
在Ubuntu下,用wine装的rtx真心不好用:

控制面板隐藏在最底层,如果设置为总是在最前,看其他窗口又不方便
聊天窗口,多个聊天窗口叠加在一起,也不知道哪个有新消息
查看历史的消息记录,直接报错退出
不同ubuntu版本安装rtx可能会遇到不同的问题,但是基本顺序都类似.我的安装过程如下:

1、设置软件源并安装wine


复制代码