首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过ssh将值传递给shell脚本

通过ssh将值传递给shell脚本
EN

Stack Overflow用户
提问于 2013-04-08 00:10:59
回答 3查看 1.3K关注 0票数 0

我想通过ssh向shell脚本传递一个值:

  1. 我有两台Linux机器: machine1和machine2。
  2. 我在这些机器上有两个脚本: machine1上的“machine1”和"script2“machine2。
  3. 我做了ssh设置,这样我就可以不用密码从machine2登录到machine1了。 /opt/script1 1 #!/bin/sh“输入您的名称”,读名称ssh @machine2 "/opt/script2 2 $name“ /opt/script2 2 #!/bin/sh回显"$name“
  4. 但是没有一根线在打印

请告诉我做这件事的程序。

EN

回答 3

Stack Overflow用户

发布于 2013-04-08 05:54:35

你能试试这样的脚本吗?

script1.sh

代码语言:javascript
复制
echo "enter your name"
read name
ssh root@machine2 "/opt/script2.sh $name"

script2.sh

代码语言:javascript
复制
echo $1

将命令行参数传递给shell脚本

$0是命令的名称。

$1第一个参数

$2秒参数

$3、第三参数等

$#参数总数

$@将列出所有参数

票数 0
EN

Stack Overflow用户

发布于 2013-04-08 09:58:06

如果我像鲁珀特script1那样输入我的名字

代码语言:javascript
复制
ssh root@machine2 "/opt/script2 Rupert"

Script2正在寻找$name,但这尚未在machine2上设置,因此脚本将不会打印任何内容。

您可以将script2编辑到下面

代码语言:javascript
复制
#!/bin/sh
name=$1
echo "$name"
票数 0
EN

Stack Overflow用户

发布于 2013-04-08 11:13:10

您应该按以下方式更改脚本1:

代码语言:javascript
复制
#!/bin/sh
echo "enter your name"
read name
ssh root@machine2 `/opt/script2 $name` 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15869383

复制
相关文章

相似问题

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