代码之家  ›  专栏  ›  技术社区  ›  DanieleO

sshpass将字符串附加到远程文件

  •  -2
  • DanieleO  · 技术社区  · 7 年前

    echo "$test" | sshpass -p $pass $host 'cat >> /remote/full/path/log/report.log'
    
    sshpass -p $pass $host "echo $test" >> /remote/full/path/log/report.log
    

    什么都不管用

    3 回复  |  直到 7 年前
        1
  •  1
  •   Erez Binyamin    6 年前

    您需要将“StrictHostkeyChecking=no”选项添加到ssh:

    echo "$test" | sshpass -p $pass ssh - o StrictHostkeyChecking=0 $host 'cat >> /remote/full/path/log/report.log'
    

    我不知道为什么会这样,但请享受bash魔术。英雄联盟

    旁白:

    如果将要登录的用户的密码设置为envar$SSHPASS而不是$pass,则可以使用SSHPASS-e选项。

    SSHPASS=$pass
    echo "$test" | sshpass -e ssh - o StrictHostkeyChecking=0 $host 'cat >> /remote/full/path/log/report.log'
    
        2
  •  0
  •   DanieleO    7 年前

    sshpass -p $pass' ssh -o StrictHostKeyChecking=no $host "cd /full/path/ && echo $test >> /full/path/report.log"
    
        3
  •  0
  •   Fabio Marzocca    7 年前

    sshpass -p 'your_pass_here' ssh user@domain 'df -h'