2015-10-02 5 views
2

Мне нужно сделать несколько шагов, прежде чем я войду в файл, который мне нужен, поэтому я пытаюсь настроить псевдоним в моем терминале, что заставляет меня файл, выполнив этот псевдоним.Продолжить/запустить команды после ssh в VM

Следующие шаги необходимы, чтобы прибыть, где я должен быть:

  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. Редактирование строка 33 в этом файле (я предполагаю, что это возможно, чтобы перейти к этой линии)

Я попытался создать псевдоним, как это, но проблема заключается в том, что она прекращает работу остальной команды после I SSH 'd в Vagrant. если я вручную exit Vagrant, он продолжает команду (и, конечно, возвращает ошибку, потому что такой папки нет).

Вопрос: Как я могу убедиться, что все, начиная с шага 3, выполняется ПОСЛЕ 2-го шага, выполненного через SSH?

Моя конечная цель - создать программу Apple Automator, которая позволяет мне вводить значение, которое вводится в строке 33, но на данный момент у меня все нормально с псевдонимом.

+0

вы хотите запустить, что каждый раз вы делаете 'бродяга ssh' или только тогда, когда VM инициализируется (' бродяга up')? в первом случае вам нужно будет создать псевдоним для 3-7 и добавить к вашему .bash; во втором вы можете использовать подготовку сценария –

+0

Нет, я не хочу запускать его каждый раз, когда я делаю «vagrant ssh', так как мне также нужно делать некоторые другие вещи (редко, но это происходит). Я выяснил, что отправлять Vagrant с моей машины невозможно, поэтому теперь я настроил действие, которое я запускаю вручную после того, как SSH в Vagrant. Это изменяет 4 шага в один шаг, так что это вполне улучшилось! – Rvervuurt

ответ

0

Я знаю, что давно задал этот вопрос, но тем временем я нашел решение и забыл, что я разместил этот вопрос.

Мой псевдоним в моем .zshrc -файла выглядит следующим образом:

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

Другими словами, ССТС в бродягу, как корень (он запрашивает мой пароль), Nanos в файл по линии 32 (или любую другую строку), затем, когда файл сохраняется, он перезагружает apache2 и изменения применяются.

Просто используйте нижеследующий вариант и измените значения.

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

Смежные вопросы