我需要将以下curl输出保存在一个名为当前日期+时间的文本文件中。
btcusd=$(curl -s "https://api.coinbase.com/v2/prices/spot?currency=USD" | egrep -o '"amount":"[0-9]+(\.)?([0-9]{0,7}")?' | sed 's/"amount"://' | sed 's/\"//g')
usdgbp=$(curl -s "https://forex.1forge.com/1.0.3/quotes?pairs=USDGBP&api_key=XXXXXX" | egrep -o '"price":[0-9]+(\.)?([0-9]{0,5})?' | sed 's/"price"://' | sed 's/\"//g')
以上仅输出btc / usd和usd / gbp的价格,所有不需要的数据已被排除。
理想情况下,当我运行bash脚本时,将创建一个名为“ ddmmyy-hhmmss.txt”的新txt文件,其中包含2行数据,每个价格一行。
EG:
07/01 / 2019-115557.txt
4017.89
0.7845
谢谢!
答案 0 :(得分:1)
您可以仅将输出重定向到文件。首先将目标文件名存储在变量中。然后运行您的第一个命令,将其输出重定向到该文件。请注意,单个>
会覆盖文件中的所有内容(如果存在)。双>>
将命令的输出附加到现有文件。
FILE_NAME=`date +"%d%m%Y-%H%M%S"`.txt
curl -s "https://api.coinbase.com/v2/prices/spot?currency=USD" | egrep -o '"amount":"[0-9]+(\.)?([0-9]{0,7}")?' | sed 's/"amount"://' | sed 's/\"//g' > $FILE_NAME
curl -s "https://forex.1forge.com/1.0.3/quotes?pairs=USDGBP&api_key=XXXXXX" | egrep -o '"price":[0-9]+(\.)?([0-9]{0,5})?' | sed 's/"price"://' | sed 's/\"//g' >> $FILE_NAME