首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

SSH 远程执行命令简介

ssh执行远程操作 命令格式 ssh -p $port $user@$p 'cmd' $port : ssh连接端口号 $user: ssh连接用户名 $ip:ssh连接的ip地址 cmd:远程服务器需要执行的操作...准备工作 基于公私钥认证或者用户名密码认证能确保登录到远程local2服务器(有点基本运维知识的人做这个事情都不是问题) cmd如果是脚本,注意绝对路径问题(相对路径在远程执行时就是坑) 不足 这个命令可以满足我们大多数的需求...,但是通常运维部署很多东西的时候需要root权限,但是有几处限制: 远程服务器local2禁止root用户登录 在远程服务器脚本里转换身份用expect需要send密码,这样不够安全 执行远程服务器需要...sudo权限的脚本 ssh的-t参数  -t      Force pseudo-tty allocation. ...中文翻译一下:就是可以提供一个远程服务器的虚拟tty终端,加上这个参数我们就可以在远程服务器的虚拟终端上输入自己的提权密码了,非常安全 命令格式 ssh -t -p $port $user@$ip  '

1.7K10

Linux下使用SSH远程执行命令方法收集

如果不加双引号,第二个ls命令在本地执行 分号,两个命令之间用分号隔开 多行命令可以输入双引号后回车,结尾使用双引号包裹 对于脚本的方式: 有些远程执行的命令内容较多,单一命令无法完成,考虑脚本方式实现...重定向目的在于不显示远程的输出了 在结束前,加exit退出远程节点 执行本地的脚本 我们在本地创建一个脚本文件test.sh,内容为: ls pwd echo $0 然后运行下面的命令: ssh root...@xxx.xxx.xxx.xxx < test.sh 带参数本地脚本 ssh root@xxx.xxx.xxx.xxx 'bash -s' < test.sh helloworld 执行远程服务器上的脚本...ssh root@xxx.xxx.xxx.xxx "/home/nick/test.sh" 执行远程服务器上带参数脚本 ssh root@xxx.xxx.xxx.xxx /home/nick/test.sh...helloworld 总结 以上所述是小编给大家介绍的Linux下使用SSH远程执行命令方法收集,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

4.9K21

使用并发 ssh 连接来提升捞日志脚本执行效率

; 机器实例需要使用特殊的 get_instance_by_service 命令获取,这是平台提供的命令,它接收一个 group 参数,返回与日志相关的 500 多台实例; 上行时将 grep 脚本上传到远程机器的...;ssh 第二个参数是要远程执行的命令,为了测量 ssh 时间这里使用了 pwd 命令,它的耗时基本可以忽略。...,另外这个不能防止本地文件冲突,因此不同用户最好有自己单独的脚本副本) 脚本接收的参数由真正执行日志捞取的脚本传递,关于如何给远程脚本传递参数,稍后给出 干活的脚本有了,下面就来看一下负责上传脚本的 upload_fetch_log.sh...异步执行会非常快的返回,不存在之前那 2 秒的排队问题了 之前已经将过滤脚本上传到了远程实例的 /tmp 目录,所以这里直接调用 /tmp/fetch_log.sh 远程 ssh 脚本传参比较直观,就是直接在脚本后面加相应的参数字符串...,为防止参数中的空格中断参数解析,这里加了双引号 (在双引号中间需要 \ 释义) 按是否有 date 参数做下区分,有的话会将 date 参数给到远程实例的 fetch_log.sh 脚本,没有的话不传递这样就会使用当前日志文件了

95530

CentOS使用expect批量远程执行脚本和命令

我们有时可能会批量去操作服务器,比如批量在服务器上上传某个文件,安装软件,执行某个命令和脚本,重启服务,重启服务器等,如果人工去一台台操作的话会特别繁琐,并浪费人力。...这时我们可以使用expect,向目标服务器上发送指令去实现批量操作。 下面的例子将在centos上将一个文件,批量拷贝到其他服务商上,并执行相应的命令 1....编写expect脚本 copyfilebatch.sh 下面的脚本将向内网IP为 192.168.0.102 至 192.168.0.112 的服务器分别拷贝一个rc.local文件,拷贝成功后,执行chmod...$i" puts "$ip" spawn ssh -o StrictHostKeyChecking=no $ip set timeout 3 expect "root@$ip's password...root@$ip's password:" set timeout 3 send "$password\r" set timeout 3 send "exit\r" spawn ssh

1.4K31

【Groovy】Groovy 脚本调用 ( 命令行执行 Groovy 脚本并传入参数 | 获取 Groovy 脚本执行参数 )

文章目录 前言 一、 命令行执行 Groovy 脚本并传入参数 二、获取 Groovy 脚本执行参数 前言 在 Groovy 脚本 , Groovy 类 , Java 类中 , 可以调用 Groovy...脚本 ; 一、 命令行执行 Groovy 脚本并传入参数 ---- 假设现在有一个 Script.groovy 脚本 , 使用 groovy Script.groovy arg0 arg1 命令 , 执行该...Script.groovy 脚本 ; 在 Groovy 脚本后面带上 arg0 和 arg1 是脚本执行参数 , 在 Groovy 脚本中 , 可以通过 args 获取参数 , 这是一个字符串数组...String[] 类型数据 ; 二、获取 Groovy 脚本执行参数 ---- 在 Groovy 脚本中 , 通过 String[] args 可以直接获取命令行中传入的参数 ; Script.groovy...脚本代码如下 : /* 使用 groovy Script.groovy arg0 arg1 命令 执行该 Script.groovy 脚本 在 Groovy 脚本后面带上 arg0

1.8K10

Linux远程ssh执行命令expect使用及几种方法

expect命令实现脚本免交互 一、Linux下SSH无密码认证远程执行命令 在客户端使用ssh-keygen生成密钥对,然后把公钥复制到服务端(authorized_keys)。...实现步骤: 1、客户端机器创建密钥对   # ssh-keygen -t rsa #一直回车 2、登录需要执行命令的ssh服务器,创建.ssh目录,设置好目录权限 mkdir /root/.ssh chmod...no #关闭密码验证 service sshd restart 5、免交互登陆测试,并查看远程主机home目录 ssh root@服务端IP "ls -l /home/" 二、expect工具实现免密交互.../bin/bash ip=`cat /root/ip.txt` user=root pass=Admin@123 for i in $ip; do expect -c " spawn ssh..."$pass\r\"; exp_continue} \"root@*\" {send \"free -m\r exit\r\"; exp_continue} }" done 参数说明

9.6K40

详解SSH 远程执行任务的方法

下面就对 SSH远程操作功能进行一个小小的总结。 远程执行命令 如果我们要查看一下某台主机的磁盘使用情况,是不是必须要登录到目标主机上才能执行 df 命令呢?...当然不是的,我们可以使用 ssh 命令在远程的主机上执行 df 命令,然后直接把结果显示出来。...注意,我们在上图的命令中为 bash 指定了 -c 参数远程执行脚本 对于要完成一些复杂功能的场景,如果是仅仅能执行几个命令的话,简直是弱爆了。...要想在这种情况下(远程执行本地的脚本)执行带有参数脚本,需要为 bash 指定 -s 参数: $ ssh nick@xxx.xxx.xxx.xxx 'bash -s' < test.sh helloworld...执行远程服务器上的脚本 除了执行本地的脚本,还有一种情况是脚本文件存放在远程服务器上,而我们需要远程执行它! 此时在远程服务器上用户 nick 的家目录中有一个脚本 test.sh。

2.4K21

ssh远程执行目标机器上的命令

一句话: ssh -t -p 端口号 用户名@远程机器IP '远程机器上的命令完整路径' 例如:   ssh -t -p 22 yangjunming@dev '/opt/app/deploy.sh'...注意事项: 一般先配置ssh免密码登录,然后结合这个可以实现一键远程自动部署,大概思路如下: a)先在本机build项目(ant/maven/gradle均可) b) 然后打包成tar并copy到远程机器的指定目录...(最简单的方式就是用scp) c) 调用远程机器上的shell脚本,解压tar并执行nohup之类的命令重启应用(如果考虑到备份的话,可以在解压前,先备份原来的应用或目录) 注:如果启用过程中,依赖一些环境变量...,比如:大部分java应用都依赖JAVA_HOME,CLASSPATH这二个环境变量,假设这二个环境变量是在/etc/profile里设置的,强烈建议在shell脚本开头,写上source /etc/profile...d) 删除(或备份)远程机器上的tar包

1.1K100

linux学习第六十九篇:分发系统介绍,expect脚本远程登录,expect脚本远程执行命令,expect脚本传递参数

分发系统介绍 expect可以让我们实现自动登录远程机器,并且可以实现自动远程执行命令。当然若是使用不带密码的密钥验证同样可以实现自动登录和自动远程执行命令。...但当不能使用密钥验证的时候,我们就没有办法了。所以,这时候只要知道对方机器的账号和密码就可以通过expect脚本实现登录和远程命令。...expect脚本远程登录 yum install -y expect 自动远程登录 #!...expect脚本远程执行命令 自动远程登录后,执行命令并退出 #!...远程登录机器执行命令后退出 ? 远程的机器执行命令后创建的文本和内容 ? expect脚本传递参数 传递参数 #!

1.5K110
领券