Ssh

如何為 OS X 編寫 shell 腳本以通過 SSH 登錄遠端伺服器並執行命令

  • July 20, 2011

這看起來很簡單……我正在嘗試編寫一個腳本,我可以在 OS X 中點兩下它。該腳本是通過 SSH 登錄到遠端伺服器,執行 git commit 並退出。當我將命令複製/粘貼到終端時,它們可以工作,但是當我將它們保存在 .command 文件中時,它似乎已連接但隨後掛起,如果我在已打開的終端視窗中鍵入 exit,則腳本將在停止的地方繼續.

腳本/命令只是:

#!/bin/sh
echo "**** committing remote changes on remote ****"
ssh username@server.com
cd /home/username/git/repo/
git commit -m "remote server commit"
exit

我是新來編寫這樣的腳本,所以它可能是非常明顯的東西我只是錯過了(因為在這裡閱讀了許多問答,有人一定會問,是的,我的 SSH 密鑰設置正確,複製/粘貼此程式碼完美工作) .

我認為這無關緊要,但我要訪問的伺服器是一個 BlueHost/HostMonster 共享網路主機,帶有一個被監禁的外殼。

沒有嘗試過從 mac 編寫腳本,但試試這個: ssh username@server.com 'cd /home/username/git/repo/ && git commit -m "remote server commit"'

引用自:https://serverfault.com/questions/292105