【问题标题】:Pipe CURL result to BC管道 CURL 结果到 BC
【发布时间】:2019-04-09 17:28:00
【问题描述】:

我有一个 CURL 命令

echo "{cur_format}" | curl -w @- -s -o /dev/null https://example.com

假设上面的命令输出一个字符串“我等了 1 天”。

如何将“我等了 1 天”转换为“我等了 24 小时”(即通过管道将“1 * 24”传递给 bc 命令”)?

谢谢。

【问题讨论】:

  • 您必须提取 1,相乘,然后将其推回字符串中
  • 更好的解决方案可能是通过管道连接到 Awk,但是。脚本的具体外观取决于您需要它的通用程度。 awk '{$3 *= 24; $4 = "hours"; print }' 按你的要求做。
  • @tripleee 谢谢! “awk”解决了我的问题。
  • 您的问题应该是严格意义上的问题。请随意发布您的最新编辑作为答案。

标签: bash shell curl sed bc


【解决方案1】:

我设法通过使用“awk”命令解决了这个问题。例如,

echo "{cur_format}" | curl -w @- -s -o /dev/null https://example.com | awk -F'[:\|]' '{print $1 ":" (($2*24)) "|" $3 "|" $4;}'

请注意,-F'[:\|]' 是您需要的任何分隔符的列表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-16
    • 2012-06-26
    • 1970-01-01
    相关资源
    最近更新 更多