linux远程登陆其他主机并执行命令的若干方式

 

一、命令行登陆

ssh后,一定后边加双引号 写命令,否则命令实在本地执行的,多条命令的话用双引号隔开,

1
ssh user@remoteNode "cd /home ; ls"

二、脚本登陆

1
2
3
4
5
6
#!/bin/bash 
ssh root@192.168.0.23   << remotessh 
killall -9 java 
cd /data/apache-tomcat-7.0.53/webapps/ 
exit 
remotessh

  不产生日志

1
ssh root@192.168.0.23 > /dev/null 2>&1   << remotessh

三、提高

不同远端机器上执行同一条命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash 
   
#变量定义 
ip_array=("192.168.1.1" "192.168.1.2" "192.168.1.3"
user="test1" 
remote_cmd="/home/test/1.sh" 
   
#本地通过ssh执行远程服务器的脚本 
for ip in ${ip_array[*]} 
do 
    if [ $ip = "192.168.1.1" ]; then 
        port="7777" 
    else 
        port="22" 
    fi 
    ssh -t -p $port $user@$ip "remote_cmd" 
done 
posted @ 2021-11-11 11:12  向往明天-tsingyun  阅读(1206)  评论(0编辑  收藏  举报