执行shell命令,把执行结果保存到变量,并且通过curl发送

#!/bin/bash

while :
do
  # 网卡流入
  # -i 指定网卡
  # -t 表示输出文本
  # -s 1 表示一秒之后输出
  # grep 过滤
  # ` `表示把执行结果存到变量
  network_card_inflow=`iftop -i p5p1 -t -s 1 | grep 'Total receive rate'`
  echo "$network_card_inflow"
  curl -X POST -d "${network_card_inflow}" http://localhost:8080/stock-monitor/upload-data

  # cpu数据
  # -b 表示以文本模式输出
  # -n 1 表示输出一次
  cpu=`top -b -n 1 | grep Cpu`;
  echo "$cpu"
  curl -X POST -d "${cpu}" http://localhost:8080/stock-monitor/upload-data

  # 内存数据
  mem=`top -b -n 1 | grep 'KiB Mem'`
  echo "$mem"
  curl -X POST -d "${mem}" http://localhost:8080/stock-monitor/upload-data

  sleep 5s
done

你可能感兴趣的:(linux,shell,linux,iftop,curl,nohup)