Linux

如何在命令中儲存和擴展變數?

  • May 8, 2020

我正在嘗試獲取S3 文件夾的大小並將其儲存在INFLUXDB

下面是我的程式碼

#!/bin/bash -x
FILESIZE=$(mktemp)
s3cmd du -r "s3://path1/path2/" | awk '{print $1}' >> "$FILESIZE"
cat "$FILESIZE"

echo curl -i -XPOST "http://localhost:8086/write?db=S3check&precision=s" --data-binary "ecmwftrack,bucketpath=ecmwf-archive/daily size='$FILESIZE'"

下面是我的輸出 在此處輸入圖像描述

$FILESIZE 46473946436的輸出

但是當我在CURL命令中使用****$FILESIZE時,我沒有得到值… FILESIZE 作為輸出…

如何使 $FILESIZE 的值出現在輸出中

您需要發送數據,您可以嘗試以下方法嗎?

#!/bin/bash -x
FILESIZE=$(mktemp)
s3cmd du -r "s3://path1/path2/" | awk '{print $1}' >> "$FILESIZE"
cat "$FILESIZE"

echo curl -i -XPOST "http://localhost:8086/write?db=S3check&precision=s" --data-binary "ecmwftrack,bucketpath=ecmwf-archive/daily size=$(cat $FILESIZE)"

引用自:https://unix.stackexchange.com/questions/585303