我想让保存在我的bashrc文件中的别名通过SSH登录到远程MySQL数据库。 假设我无法添加/更改正在接入的远程计算机上的任何文件。这是相关的代码。为SSH创建别名使用ENDSSH登录MySQL登录heredoc
function ssh_mysql {
echo "SSHing to $server"
ssh -t -t [email protected]$server <<ENDSSH
eval "mysql -h "$host" -u $user -p $pass $db"
ENDSSH
}
alias wt_mysql=ssh_mysql
的问题:进入“wt_mysql”到终端作为别名SSHS并登录到MySQL的罚款..但想在MySQL提示符输入任何命令/查询/等时,没有我所提交已执行/运行。包括'exit'命令。我必须按C键才能返回到我的本地终端。虽然它有点出于我的理解我相信问题与此主题有关,Terminating SSH session executed by bash script
我如何确保mysql和任何后续命令远程执行?
谢谢!
为什么你定义'函数ssh_mysql'然后'别名wt_mysql = ssh_mysql'而不是只定义'函数wt_mysql'的?我假设在我的答案中,运行'ssh_mysql'和运行'wt_mysql'时遇到同样的问题,但如果是这种情况,那么为什么要告诉我们这个别名?一般来说,您应该尽可能简化您的问题,以方便人们帮助您。 – dave4420 2013-05-02 08:53:22
感谢您的解决方案。我一直在思考的东西..我一直希望这是一个别名,以便它出现在带有别名命令的标准输出中。我的问题是,我有这个时髦的密码来解决这个问题字符。将我的特定解决方案添加到下面的解决方案的评论中。 – sojojo 2013-05-09 20:14:32