首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UNIX ssh脚本,在远程服务器上运行命令

UNIX ssh脚本,在远程服务器上运行命令
EN

Stack Overflow用户
提问于 2009-06-16 12:29:06
回答 10查看 76.8K关注 0票数 5

我想创建一个脚本,自动登录到远程服务器,并抓取服务器上的一个文件。该脚本已经登录到服务器,但是命令并未在该计算机上运行。一旦我断开与远程服务器的连接,这些命令就会在客户机上运行。

代码语言:javascript
复制
!/bin/sh
ssh -o PreferredAuthentications=publickey brjones@server.com
cd ~/folder
"i would like to grab file and copy it to client machines folder"

编辑:我不确定您是否注意到了,但是我使用ssh和密钥生成来无密码地连接到远程服务器。我很欣赏这些想法,但我正在寻找可能的管道命令或运行命令在远程服务器上与客户端的脚本。我意识到远程服务器无法访问客户机脚本,但是我很好奇是否可以通过ssh连接来传输命令。

EN

回答 10

Stack Overflow用户

发布于 2009-06-16 12:31:13

您应该使用scp (“安全复制”)而不是ssh (“安全外壳”)。

票数 14
EN

Stack Overflow用户

发布于 2009-06-16 14:19:59

此外,如果您不希望在远程服务器上有可用的脚本,请尝试以下操作:

代码语言:javascript
复制
ssh thehost 'cd /tmp; ls; echo Hello world, I am `hostname`'

对于无SCP复制:

代码语言:javascript
复制
ssh localhost 'cat /bin/bash' > local_bash
票数 14
EN

Stack Overflow用户

发布于 2009-06-17 09:46:11

如果您的目标仅是传输文件,则应使用scp。但是,要在远程主机上执行一些命令而不在该远程主机上使用特定脚本,您可以简单地使用如下所示的标准输入:

代码语言:javascript
复制
!/bin/sh
ssh -o PreferredAuthentications=publickey brjones@server.com << EOT
cd ~/folder
echo "hello" > hello.txt
...
EOT
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1001179

复制
相关文章

相似问题

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