找回密码
 注册
关于网站域名变更的通知
查看: 257|回复: 2
打印 上一主题 下一主题

paramiko.SSHClient()的exec_command()的使用问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-19 13:53 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
python脚本0 j3 f& N4 D: `2 ^7 |$ l$ E1 J
& a1 t, q% c2 Q7 P# k
#!/usr/bin/env python3 y1 P6 p, X" Z/ O
#coding: utf-8" \: C- A) h/ S  }
3 h" r. M) ^( ]. F
import paramiko
; V8 V# p  ^1 a3 SIP='192.168.xxx.xxx'' ?+ C; f3 k1 d5 v$ [  E
FILEPATH='/root/test/test'" b0 K+ x1 m8 i/ C
LINE= 'use': C6 Q- J, P7 S2 v; W, n5 R
print(FILEPATH)
! z% Q. X  V1 w* @" d8 [0 j, r0 D# 建立一个sshclient对象
: N1 A0 }6 M, {+ cssh = paramiko.SSHClient()  H* w! ]4 M, x5 g  ], T
# 允许将信任的主机自动加入到host_allow 列表,此方法必须放在connect方法的前面
' U; A. w" X1 v. D) y, F/ nssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
$ v! j0 B+ c% m! }) u# 调用connect方法连接服务器
7 r: A3 d, e3 D5 A2 T: wssh.connect(hostname=IP, port=22, username='root', password='111')
2 p0 X2 Z& i) U' x5 L  j% T
* ~% e; }) Q  ^  `2 Gcommand1="echo $LINE"
9 U9 ?" ?. a. M/ P$ Z$ ncommand2=“echo use”3 @3 P$ i4 K' B2 I  l7 M9 I; {
stdin1, stdout1, stderr1 = ssh.exec_command(command1/2)# ~2 z* ~3 Z- k  r& t
result1 = stdout1.read().decode('utf-8')/ m/ r5 q: i/ J! s2 O, d  y" @
print(result1)
/ a7 }% h, W! D  D: u
' u. J; D: ^, W3 r9 a: R# 关闭连接
& Q7 [! f, V  O+ s4 y7 u& cssh.close()
4 N( b) V) j0 V, n$ L+ @( o$ g! h问题出现在command1不能使用变量,使用字符串的command2可以正常运行;
3 \! Q: T2 K" Z% O" @# k3 D那么应该如何使用变量
, i9 n8 v) {3 E" s( E5 ~1 u5 O7 j: |& H$ h* v
还有如果想这样使用ssh.exec_command("sed "$a$LINE"  $FILEPATH")  就是向远程服务器指定文件末尾添加内容(想使用变量好适用于不同场景便于修改)应该怎么调整
. D- ^$ ^3 e- y( r6 Z8 T

该用户从未签到

3#
 楼主| 发表于 2020-8-19 17:49 | 只看该作者
还有如果想这样使用ssh.exec_command("sed "$a$LINE"  $FILEPATH")  就是向远程服务器指定文件末尾添加内容(想使用变量好适用于不同场景便于修改)应该怎么调整

该用户从未签到

2#
发表于 2020-8-19 15:07 | 只看该作者
还以为是资料帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-25 02:05 , Processed in 0.187500 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表