我想讓保存在我的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