如何 运行 bash sudo su - 下的 vagrant 脚本?

How to run bash script in vagrant from under sudo su -?

我进入 vagrant shell 然后进入 sudo su - 在我的项目中。接下来我得用命令cd /var/www/html进入文件夹,执行生成文件的命令,让它成为generate_document。但问题是,如果我对所有这些操作编写一个 bash 脚本,我就会停止在 vagrant shell

我尝试了命令和文件中的几行,但没有一个操作对我有帮助。

如何编写 bash 脚本:

#!/usr/bin/env bash

cd ~/Desktop/Work/arteccrm/vagrant

first variant
vagrant ssh my_crm -c " sudo su -; cd /var/www/html/; generate_document"

another variant
sudo-s -- "vagrant ssh my_crm; cd /var/www/html/; generate_document"

another variant
vagrant ssh my_crm -c 'sudo su -' && ssh my_crm -c ' cd /var/www/html/; generate_document'

another variant
vagrant ssh my_crm -c 'sudo su - && cd /var/www/html/ && generate_document'

another variant
vagrant ssh my_crm -c 'sudo su -'
vagrant ssh my_crm -c 'cd /var/www/html/'
vagrant ssh my_crm -c 'generate_document'

another variant
vagrant ssh crm -c 'cd /var/www/html/'
vagrant ssh crm -c 'cd /var/www/html/'
cd /var/www/html/ && generate_document

我找到了我的问题的解决方案:

vagrant ssh crm -c 'sudo sh -c "cd /var/www/html/; generate_document"'