m0_70113813 2022-08-22 15:42 采纳率: 50%
浏览 26
已结题

shell脚本内使用ssh连接远程机器, 如何使用变量

问题遇到的现象和发生背景

如题, linux环境下, shell脚本内如何用ssh连接远程机器后, 使用shell脚本内的变量
同时, 远程机器执行命令后输出的结果, 如何赋值到变量里面
下面是我预想中的代码, 自己测了下是行不通的, 麻烦指正下两台机器之间如何变量互通, 或者单向通也行, 这样可以让代码变得简单
如果都不行, 我可以在远程机器把输出内容写文件里, scp回来再处理

问题相关代码,请勿粘贴截图
#!/bin/sh

path_list=(/root/path1 /root/path2 /root/path3)
ret=""
ssh -Tq root@192.168.0.100 << EOF
for path in ${path_list[*]}
do
  output=`echo $path`
  ret=${ret}${output}
done
exit
EOF

echo $ret
  • 写回答

2条回答 默认 最新

  • honestman_ 2022-08-22 15:54
    关注

    可以把要执行的命令写在shell脚本中,然后通过python的subprocess获取脚本执行结果

    status, _ = subprocess.getstatusoutput('sh test.sh')
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月29日
  • 创建了问题 8月22日

悬赏问题

  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
  • ¥15 振荡电路,ADS仿真
  • ¥15 关于#c语言#的问题,请各位专家解答!
  • ¥15 这个如何解决详细步骤
  • ¥15 在微信h5支付申请中,别人给钱就能用我的软件,这个的所属行业是啥?