我试图为我的PHP应用程序构build一个简单的部署脚本。 我知道这个工作有几种工具(Capistrano,Phing等),但是对于我的简单部署例程来说,它们看起来像是很多工作。
我使用sshpass来避免一遍又一遍地input密码。 但上传我的压缩安装程序后,我需要ssh进入服务器并运行一些命令。 其中之一是sed。 所以,报价正在打破我的脚本。 这是这样的:
sshpass -p foo ssh user @ host“
cd / www / htdocs / foo / bar
回声“解除和删除安装程序”
tar -zxf install.tar.gz
sed“s / define('ENVIRONMENT','development'); / define('ENVIRONMENT','production');” index.PHP> tmp && mv tmp index.PHP
sed“s / define('ENVIRONMENT','development'); / define('ENVIRONMENT','production'); /”admin / index.PHP> tmp && mv tmp admin / index.PHP
“
正如你所看到的,我使用双引号来启动我的SSH语句,但是我也需要在sed上使用它们。
任何build议将不胜感激。 谢谢!
在Windows上Qt的dll部署
在Linux系统上将Java项目部署到客户端
从Mac OSX部署Qt项目到Windows
如何使用Qt-Creator部署我的应用程序?
什么是安全发布网站发布的最佳方式?
如何复制文件并赋予它们目的地目录的权限
Linux独立“安装”Postgresql
将自签名的XAP部署到Windows Phone 8
MSBuild不能build立一个MSI。 是否有Windows服务的替代品?
Azure部署 – 如何添加程序集?
转义内部引号是正常的方式。 这不行吗?
sshpass -p foo ssh user@host " cd /www/htdocs/foo/bar echo 'Untar and remove installer' tar -zxf install.tar.gz sed "s/define('ENVIRONMENT','development');/define('ENVIRONMENT','production');" index.PHP > tmp && mv tmp index.PHP sed "s/define('ENVIRONMENT','production');/" admin/index.PHP > tmp && mv tmp admin/index.PHP "
可以使用这里的文件吗?
sshpass -p foo ssh user@host <<DATA cd /www/htdocs/foo/bar echo 'Untar and remove installer' tar -zxf install.tar.gz sed "s/define('ENVIRONMENT','production');/" admin/index.PHP > tmp && mv tmp admin/index.PHP DATA
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。