centos ssh主机后在远程主机中继续ssh 脚本
时间: 2023-11-23 13:29:02 浏览: 75
在CentOS SSH主机上,可以使用`ssh`命令连接到远程主机并执行脚本。例如,假设远程主机的IP地址为`remote_host`,用户名为`remote_user`,脚本位于远程主机的`/path/to/script.sh`路径下,可以使用以下命令:
```
ssh remote_user@remote_host '/path/to/script.sh'
```
这将在远程主机上执行脚本并返回结果。如果脚本需要参数,可以将它们添加到命令的末尾,例如:
```
ssh remote_user@remote_host '/path/to/script.sh arg1 arg2'
```
如果需要在脚本执行期间输入密码,可以使用SSH密钥对进行身份验证,或者使用SSH代理进行身份验证。使用SSH代理需要先在本地计算机上启动SSH代理,例如:
```
$ eval "$(ssh-agent -s)"
$ ssh-add /path/to/private/key
```
然后可以使用`-A`参数将SSH代理转发到远程主机,例如:
```
$ ssh -A remote_user@remote_host '/path/to/script.sh'
```
这将在远程主机上执行脚本,并在需要时使用本地计算机上的SSH密钥进行身份验证。
相关问题
centos ssh主机执行远程命令
可以使用ssh命令在CentOS主机上执行远程命令。以下是步骤:
1. 打开终端并输入以下命令连接到远程主机:
```
ssh username@remote_host
```
其中,`username`是远程主机的用户名,`remote_host`是远程主机的IP地址或域名。
2. 输入密码后登录到远程主机。
3. 在远程主机上执行命令,例如:
```
ls -l /var/www/html
```
该命令将在远程主机上列出`/var/www/html`目录的内容。
4. 执行完命令后,输入`exit`命令退出远程连接。
```
exit
```
这样就会返回到本地主机的终端。
注意:若需要在脚本中执行远程命令,可以使用sshpass命令。但是,使用sshpass时需要注意密码会被明文保存在脚本中,安全性较低。
centos 脚本方式ssh主机执行远程命令
如果需要在脚本中执行远程命令,可以使用sshpass命令,以下是步骤:
1. 安装sshpass
在CentOS主机上执行以下命令安装sshpass:
```
yum install -y sshpass
```
2. 编写脚本
编写一个脚本文件,例如`remote_command.sh`,其中包含需要在远程主机上执行的命令,例如:
```
#!/bin/bash
sshpass -p 'password' ssh username@remote_host 'ls -l /var/www/html'
```
其中,`password`是远程主机的密码,`username`是远程主机的用户名,`remote_host`是远程主机的IP地址或域名,`ls -l /var/www/html`是需要执行的命令。
这个脚本文件将使用sshpass命令连接到远程主机,执行命令并输出结果。
3. 运行脚本
在CentOS主机上执行以下命令运行脚本:
```
sh remote_command.sh
```
运行脚本后,将会在本地主机上输出远程主机执行命令的结果。
注意:使用sshpass时需要注意密码会被明文保存在脚本中,安全性较低。
阅读全文