1. 执行一条命令

    • ssh user@ip command
  2. 执行多条命令
    • ssh user@ip "command1;command2"    #分号隔开
  3. 关于转义
    • ssh user@ip 'echo $HOME'      #单引号,本机不转义,到目标机器执行
      ssh user@ip "echo $HOME" #双引号,先在本机转义,到目标ip执行
    •  [root@ricky01 ~]# ssh ricky02@192.168.56.101 'echo $HOME' #单引号,先不转义,到目标机器执行echo $HOME
        ricky02@192.168.56.101's password:
        /home/ricky02

      [root@ricky01 ~]# ssh ricky02@192.168.56.101 "echo $HOME" #双引号,先把$HOME转成/root,到目标机器执行echo /root
        ricky02@192.168.56.101's password:
        /root

  4. 关于awk
    • ip a|grep 192.168*|awk '{ print $2 }'
      192.168.56.102/24 #本机可以正确执行
    • [root@ricky01 ~]# ssh 192.168.56.101 ip a|grep 192.168*|awk '{ print $2 }'   #单条命令,不加引号,可以执行
      root@192.168.56.101's password:
      192.168.56.101/24
    • [root@ricky01 ~]# ssh 192.168.56.101 'ip a|grep 192.168*|awk '{ print $2 }''  #加单引号,报错
      root@192.168.56.101's password:
      awk: cmd. line:1: {
      awk: cmd. line:1: ^ unexpected newline or end of string
    • [root@ricky01 ~]# ssh 192.168.56.101 "ip a|grep 192.168*|awk '{ print $2 }'"  #加双引号,没有执行awk
      root@192.168.56.101's password:
      inet 192.168.56.101/24 brd 192.168.56.255 scope global dynamic enp0s8
    • [root@ricky01 ~]# ssh 192.168.56.101 "ip a|grep 192.168*|awk '{ print \$2 }'"  #双引号,$前加转义符号\,正确执行
      root@192.168.56.101's password:
      192.168.56.101/24
    • [root@ricky01 ~]# ssh 192.168.56.101 'ip a|grep 192.168*|awk '{ print \$2 }''  #单引号,$前加转义符号\,报错
      root@192.168.56.101's password:  awk: cmd. line:1: { awk: cmd. line:1: ^ unexpected newline or end of string

ssh执行命令的更多相关文章

  1. ssh 执行命令并实时显示结果

    ssh 执行命令并实时显示结果 import paramiko def main(): sshClient = paramiko.SSHClient() sshClient.set_missing_h ...

  2. C#登录SSH执行命令,下载文件

    前言 批量登录SSH执行命令 ,把应急响应中的日志文件下载回来. 代码实现 Renci.SshNet编译出DLL,引用. using System; using System.Collections. ...

  3. Python3学习之路~9.1 paramiko模块:实现ssh执行命令以及传输文件

    我们一般使用linux的时候,都是在Windows上安装一个ssh客户端连接上去.那么从一台linux如何连接到另一条linux呢?使用ssh命令即可,因为每台linux机器自己都有一个ssh客户端. ...

  4. 模拟远程SSH执行命令的编解码说明

    模拟一个SSH“远程”执行命令并获取命令结果的一个程序: 1.在C/S架构下,当客户端与服务器建立连接(这里以TCP为例)后,二者可以不断的进行数据交互.SSH远程可以实现的效果是客户端输入命令可以在 ...

  5. 批量ssh执行命令

    [root@openfire1 script]# cat test.sh  #!/bin/bash   #本地通过ssh执行远程服务器的脚本   for ip in `cat iplist`  do ...

  6. 远程ssh执行命令时提示找不到命令

    最开始的时候碰到这种问题,是在hadoop003上配置了jdk1.8, 在hadoop002上执行ssh hadoop003 java -version提示没有命令,先ssh hadoop003然后执 ...

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

    expect命令实现脚本免交互 一.Linux下SSH无密码认证远程执行命令 在客户端使用ssh-keygen生成密钥对,然后把公钥复制到服务端(authorized_keys). 实现步骤: 1.客 ...

  8. php登陆ssh执行命令

    <?php $connection=ssh2_connect('172.16.10.3',22);ssh2_auth_password($connection,$user,$pass);$cmd ...

  9. ssh执行命令或者脚本里最好先加上 source /etc/profile

    记: 写一次shell脚本,发现总提示 找不到JAVA_HOME .明明已经配了环境变量,并且java -version也已经能输出信息,但就是提示. 后来在 脚本中加入第一句代码 source /e ...

随机推荐

  1. EAM在不同行业的应用

    EAM在不同行业的应用 EAM从出现至今,已让很多资产密集型企业受益,甚至在一些行业领域里已经是公认的.不可或缺的管理方案,比如电力行业.轨道交通行业等.但由于不同行业或者企业业务类型不同,导致了资产 ...

  2. LevelDb 101学习

    转自http://www.cnblogs.com/haippy/archive/2011/12/04/2276064.html LevelDb日知录之一:LevelDb 101 说起LevelDb也许 ...

  3. PHP变量覆盖漏洞小结

    前言 变量覆盖漏洞是需要我们需要值得注意的一个漏洞,下面就对变量覆盖漏洞进行一个小总结. 变量覆盖概述 变量覆盖指的是可以用我们自定义的参数值替换程序原有的变量值,通常需要结合程序的其他功能来实现完整 ...

  4. php+html实现用户登录退出

    随着渗透学习,逐渐意识到了学会开发也是非常重要的,仅仅是看懂感觉还是差了一些,所以写一写php的开发,这套程序目前并未有较完整的功能,之后会不断进行完善 登录页面.html <!DOCTYPE ...

  5. (转载)什么是B树?

    本文转载自网络. 如有侵权,请联系处理!  

  6. 概率派VS贝叶斯派

    机器学习中的MLE和MAP两大学派的争论: 频率学派 - Frequentist - Maximum Likelihood Estimation (MLE,最大似然估计): 频率学派认为世界是确定的, ...

  7. EM 算法 Expectation Maximization

  8. Matlab中image、imagesc和imshow函数用法解析

    来源:https://blog.csdn.net/zhuiyuanzhongjia/article/details/79621813 1.显示RGB图像 相同点:这三个函数都是把m*n*3的矩阵中的数 ...

  9. C++派生类与基类的关系

    派生类与基类有这些关系: 1.公有派生类从基类继承所有成员和成员函数 2.公有派生类无法直接访问从基类继承的私有成员,但可以通过继承的公共接口访问. 3.公有派生类无法继承基类的友元函数. 4.基类先 ...

  10. GAN网络之入门教程(五)之基于条件cGAN动漫头像生成

    目录 Prepare 在上篇博客(AN网络之入门教程(四)之基于DCGAN动漫头像生成)中,介绍了基于DCGAN的动漫头像生成,时隔几月,序属三秋,在这篇博客中,将介绍如何使用条件GAN网络(cond ...