如何 运行 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 脚本:
- 使用命令 'vagrant ssh my_crm'
进入 vagrant
- 在'sudo su -'
下执行输入
- 进入文件夹 'cd /var/www/html/'
- 执行'generate_document'
#!/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"'
我进入 vagrant shell 然后进入 sudo su - 在我的项目中。接下来我得用命令cd /var/www/html进入文件夹,执行生成文件的命令,让它成为generate_document。但问题是,如果我对所有这些操作编写一个 bash 脚本,我就会停止在 vagrant shell
我尝试了命令和文件中的几行,但没有一个操作对我有帮助。
如何编写 bash 脚本:
- 使用命令 'vagrant ssh my_crm' 进入 vagrant
- 在'sudo su -' 下执行输入
- 进入文件夹 'cd /var/www/html/'
- 执行'generate_document'
#!/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"'