You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用paramiko库在远程服务器创建变量文件名文件的实现咨询

实现方案

你可以通过Python的字符串格式化能力拼接变量到命令中,以下是几种常用的实现方式,同时附安全注意事项:

1. f-string 拼接(Python 3.6+ 推荐使用,可读性最高)

# 自定义变量
var = "your_custom_value"
# 拼接生成命令
cmd = f"touch /home/test/{var}_file.txt"

2. str.format() 拼接(兼容所有Python3版本)

var = "your_custom_value"
cmd = "touch /home/test/{}_file.txt".format(var)

安全注意事项

如果你的自定义变量可能包含空格、$、;等特殊符号,直接拼接会导致命令执行失败,甚至存在命令注入风险,建议先使用shlex库对变量做转义处理:

import paramiko
import shlex

# 自定义变量(含特殊字符也可以正常处理)
custom_var = "2024 report v1"
# 转义变量
escaped_var = shlex.quote(custom_var)

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=servername, username=usr, password=pass)
cmd = f"touch /home/test/{escaped_var}_file.txt"
stdin, stdout, stderr = ssh_client.exec_command(cmd)

# 执行结果校验
stdout_content = stdout.readlines()
stderr_content = stderr.readlines()
if stderr_content:
    print("执行错误:", stderr_content)
else:
    print("文件创建成功")

ssh_client.close()

内容的提问来源于stack exchange,提问作者Sandy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 06:36:03