将具有key = value对的文本文件转换为jq中的特定json格式

用户名

我在input.txt中有一个带有以下值的文本文件

key1=value1\r
key2=value2
key3=value3\r
key4=value4

需要jq rexpression通过删除“ \ r”将其转换为以下json格式

output.json

{
"Environment": {
    "Variables": {
        "key1": "value1",
        "key2": "value2",
        "key3": "value3",
        "key4": "value4"
    }
}

}

我已经尝试过以下表达式并获得

jq -Rs [ split("\n")[] | select(length > 0) | split("=") | {(.[0]): .[1]} ] 

并获得以下输出

[
  {
   "key1ey1": "Value1\r"
  },
  {
   "key2": "value2"
  },
  {
   "key3": "value3\r"
  },
  {
   "key4": "value4"
  }

]
罗曼·佩列赫雷斯特

jq 解:

jq -sR '{"Environment":
            {"Variables": [split("\n")[:-1][] | rtrimstr("\\r") 
                             | split("=") | {(.[0]): .[1]}
                          ]  | add
            }
        }' input.txt

输出:

{
  "Environment": {
    "Variables": {
      "key1": "value1",
      "key2": "value2",
      "key3": "value3",
      "key4": "value4"
    }
  }
}

警告

此解决方案假定=未出现在输入字符串的“值”部分中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将包含键值格式的数据的文本文件转换为json

如何将文本文件转换为CoNLL格式以进行麦芽解析器?

如何将具有单列的文本文件转换为矩阵?

将具有数学问题的文本文件转换为具有这些问题答案的文本文件

将文本文件的垂直列出的字符串转换为水平格式

我想使用Jq将文本文件数据转换为JSON

如何使用Perl将生成的文本文件转换为Junit格式(XML)

使用python将文本文件内容转换为csv格式时出现问题

在使用JS保持文本文件格式的同时,如何将文本文件转换为CSV文件?

将多个特定的文本文件转换为python中的CSV文件

使用Scala将特定格式的文本文件转换为Spark中的DataFrame

将文本文件中的字符串(已经以元组格式)转换为元组列表

如何将文本文件转换为javascript中的json对象?

将纯文本文件转换为JSON

将列表格式的文本文件转换为列表

将文本文件中的十进制值列表转换为十六进制格式

如何使用Powershell将包含双引号的文本文件转换为CSV格式

将pdf转换为python中的文本文件

将文本文件转换为JSON

如何在Python3中将多个文本文件转换为csv格式?

使用Python将文本文件转换为JSON格式

Powershell 将选项卡式文本文件内容转换为格式良好的 HTML 表格

Python:使用格式将大文本文件转换为数据框

使用 Python 将文本文件中的 Json 数组转换为 CSV

如何将三重文本文件转换为 RDF 格式

将文本文件中的二进制数据转换为文本格式

如何将数据框中的数字序列转换为 R 中特殊格式的文本文件?

使用 Python 将文本文件转换为字典,然后转换为 JSON 对象 - 但我需要从文本文件中拆分数据

如何将目录的所有json文件转换为python中的文本文件?