2015-10-02 68 views
2

在進入我需要的文件之前,我必須採取相當多的步驟,這就是爲什麼我要在終端中設置一個別名,這使我能夠該文件通過運行該別名。在ssh進入虛擬機後繼續/運行命令

以下步驟是需要到哪我必須:

  1. cd Sites
  2. vagrant ssh
  3. cd /var/www/miniportal.billetten.dk/logs/
  4. sudo -s
  5. cd /etc/apache2/sites-available/
  6. nano 25-av_miniportal.conf
  7. 在該文件
  8. 編輯線33(我猜它可能跳轉到該線)

我試圖建立這樣一個別名,但問題是,它停止我SSH後運行該命令的其餘部分'進入Vagrant。如果我手動流浪漢,它繼續命令(當然返回一個錯誤,因爲沒有這樣的文件夾)。

問題是:如何確保步驟3中的所有內容都在步驟2完成後通過SSH登錄?

我的最終目標是建立一個Apple Automator程序,讓我可以輸入一個在第33行輸入的值,但我現在只用一個別名就可以了。

+0

你希望運行每次你做'流浪漢ssh'或只有當VM初始化('流浪漢up')?在第一種情況下,您需要爲3-7創建別名並添加到.bash;在第二你可以使用腳本供應 –

+0

不,我不想每次運行'vagrant ssh'時,因爲我還必須在那裏做一些其他的東西(很少,但是它發生)。我發現無法通過自己的機器向Vagrant發送命令,所以現在我已經設置了一個操作,我在SSH進入Vagrant後手動運行。這一步改變了4個步驟,所以這是相當大的改進! – Rvervuurt

回答

0

我知道很久以前我問過這個問題,但同時我找到了解決辦法,並忘記了我發佈了這個問題。

我在我的.zshrc -file別名看起來是這樣的:

alias changeCust='ssh -t [email protected] "nano +32 /etc/apache2/sites-enabled/25-av_miniportal.conf && service apache2 reload"'

換句話說,它SSHS成無業遊民爲根(它要求我的密碼),毫微插入線32文件(或者你需要的任何行),那麼當文件被保存時,它將重新加載apache2,並且應用更改。

只需使用下面的值並更改值。

alias AliasName='ssh -t [email protected] "nano +lineNumber /path/to/file"'