Joh*_*911 7 ssh vagrant homestead
我正试图将一个简单的命令传递给流浪汉机器.
vagrant ssh -c "mysql -u root -e'CREATE DATABASE testing';"
Run Code Online (Sandbox Code Playgroud)
db不会被创建.相反,我只是通过ssh'登录'到流浪汉机器.
我跑的时候也会发生同样的事情
vagrant ssh -c "touch test.txt"
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
--command 而不是速记 -c有什么想法发生了什么?
编辑
我将发布我的脚本,它将我的脚本与Homestead集成,因此无法真正调整流浪汉配置.
编辑
因为我使用Homestead,所以用户和pw是不同的.它应该是
vagrant ssh -c "mysql -u homestead -psecret -e'CREATE DATABASE testing;'"
Run Code Online (Sandbox Code Playgroud)
不要更改上面的代码,以避免与已提交的答案混淆.
但是,这并没有解决问题.如上所述,正在发生同样的事情.
这有效
vagrant ssh -- -t 'touch test.txt'
Run Code Online (Sandbox Code Playgroud)
标志-t为bash创建一个伪tty来使用.这是对这个问题的答案的变体.
这里有更详细的解释.