将链式输入传递给strftime

时间:2018-02-23 19:04:12

标签: c# bash shell datetime jq

我正在从Dynamo表中读取数据并尝试解析jq中的输入。日期列是C#刻度,所以我试图将其转换为我可以实际洞察的正常日期时间格式。我一直在说:

Assertion failed: (jv_get_kind(j) == JV_KIND_ARRAY), function jv_array_get, file jv.c, line 324.
Abort trap: 6

这是我尝试使用的代码段:

getting_data_from_dynamo | jq -r '[(.compoundid.s | split("-")[0]),
(.compoundid.s | split("-")[1]), .typeid.n, (.datetime.n | tonumber | . 
- 62135596800 | strftime("%Y-%m-%d"))] | @csv'

1 个答案:

答案 0 :(得分:1)

我想通了,我在日期时间刻度转换中做了数学错误,正确的代码如下所示:

getting_data_from_dynamo | jq -r '
  (.compoundid.s | split("-")[:2]) + 
   [.typeid.n, 
   (.datetime.n
    | tonumber 
    | (. - 621355968000000000) / 10000000 
    | strftime("%F %X"))] 
  | @csv'