首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >执行作为参数传递的sh脚本是否可以使用grunt-shell插件?

执行作为参数传递的sh脚本是否可以使用grunt-shell插件?
EN

Stack Overflow用户
提问于 2014-10-29 11:48:22
回答 1查看 403关注 0票数 0

我的本地机器上有sh脚本,如下所示:

代码语言:javascript
复制
// run_script.sh
#!/bin/sh -e
echo "Hello"

是否可以在远程服务器上执行此脚本而不将其复制到?如下所示:

代码语言:javascript
复制
grunt.initConfig({
  script_path: '/path/to/run_script.sh',

  shell: {
    makeDir: {
      command: '<%= script_path.sh %>'
    }
  }
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-30 16:07:28

如果脚本部署在远程服务器上,那么您可以通过SSH调用它。但是您需要在远程服务器上启动SSHD。我建议您配置密钥对(因为您希望具有非交互行为,并且openssh被设计为与密码交互)。

代码语言:javascript
复制
ssh me@remote myScript.sh

如果脚本是本地的,那么您可以复制它(scp)然后执行它。或者您可以通过SSH执行远程SHELL并通过stdin发送本地脚本。

代码语言:javascript
复制
cat myScript.sh | ssh me@remote bash

在任何情况下,您都必须对您的环境做出强有力的假设(例如,windows机器上没有sshd .)如果您解释了场景背后的实际用例,也许我们可以提出更好的解决方案。

编辑:您希望运行部署脚本。在安装软件时,重要的是要信任执行它的人(特别是在生产中)。一般情况并不简单..。

我建议你去找juju/厨师/木偶/ansible或其他类似的软件。最后一个是无代理的。它们可以代替您的咕噜/外壳自制脚本,或者您可以模仿您需要的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26629548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档