python - Python结构变量
问题描述
我正在尝试使用fabric配置脚本,并且我想在使用fabric的run()运行的bash命令中访问python变量。下面是代码
vol_ex=e.run("sudo fdisk -l | grep Disk | awk {'print $2'} | grep -e '/dev/xv*' -e '/dev/sd*' | tr -d ':'")
vol_ex1=vol_ex.stdout
print("Vol_ex1=%s" % vol_ex1)
inst=conn.describe_instances(Filters=[{"Name":"network-interface.association.public-ip", "Values":["ip"]}])
inst_id=inst["Reservations"][0]["Instances"][0]["InstanceId"]
print(inst_id)
inst_az=inst["Reservations"][0]["Instances"][0]["Placement"]["AvailabilityZone"]
disk=e.run("sudo fdisk -l | grep Disk | grep 'vol_ex1' | awk '{print $3}' | cut -d'.' -f1")
我正在尝试获取存储在“vol_ex1”中的磁盘名称,但不能用于获取变量“disk”中的大小。我们如何将 python 变量传递给这样的 bash 命令?
解决方案
我将命令作为字符串创建到变量中,并尝试使用 run() 运行它但不工作
vol_ex2="sudo fdisk -l | grep Disk | grep "+vol_ex1+"| awk '{print $3}' | cut -d'.' -f1"
vol_ex2='uptime'
disk=e.run(vol_ex2)
我尝试打印 vol_ex2 并且似乎该命令有效但无法使用 run() 执行它。
有人可以帮忙吗?
推荐阅读
- sql - 用于获取每个 ID 的日期时间列值总和的 SQL 函数
- javascript - 如何在调整窗口大小时使表格响应?
- c++ - SFML 如何在 Sprite(用作地图)上绘制 Sprite(用作玩家)
- bash - 在 Linux 控制台中截断工作目录的路径
- python - 返回矩阵的最大值
- javascript - 如何在 Angular 10 中使用 ngx-translate 翻译 ng-select 下拉值?
- python - Python Selenium:如何单击复选框的空白文本?
- c# - 在 Visual Studio(不是 VS Code)中为 C# 代码添加自定义缩进
- amazon-web-services - API 网关与 Lambda 和 DynamoDB 的集成
- anylogic - 任何逻辑的统计数据