Python Paramiko - 运行命令
- 2025-03-26 09:08:00
- admin 原创
- 17
问题描述:
我尝试运行这个脚本:
hostname = '192.168.3.4'
port = 22
username = 'username'
password = 'mypassword'
y = "2012"
m = "02"
d = "27"
if __name__ == "__main__":
s = paramiko.SSHClient()
s.load_system_host_keys()
s.connect(hostname, port, username, password)
command = 'ls /home/user/images/cappi/03000/y/m/d'
s.close
问题是:如何将变量y
、m
、d
放入变量 中command
?
解决方案 1:
Python 有很多方法可以执行字符串格式化。最简单的方法之一就是将字符串的各个部分连接在一起:
#!/usr/bin/env python
import paramiko
hostname = "192.168.3.4"
port = 22
username = "username"
password = "mypassword"
y = "2012"
m = "02"
d = "27"
def do_it():
s = paramiko.SSHClient()
s.load_system_host_keys()
s.connect(hostname, port, username, password)
command = "ls /home/user/images/cappi/03000/" + y + "/" + m + "/" + d
stdin, stdout, stderr = s.exec_command(command)
for line in stdout.readlines():
print line
s.close()
if __name__ == "__main__":
do_it()
解决方案 2:
使用新的格式规范,您可以按名称访问参数:
'ls /home/user/images/cappi/03000/{year}/{month}/{day}'.format(year=y, month=m, day=d)
解决方案 3:
我更喜欢
command = f"ls /home/user/images/cappi/03000/{y}/{m}/{d}"
解决方案 4:
command = 'ls /home/user/images/cappi/03000/%s/%s/%s' %(y,m,d)
相关推荐
热门文章
项目管理软件有哪些?
热门标签
云禅道AD