首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >评估变量输出json文件内容

评估变量输出json文件内容
EN

Stack Overflow用户
提问于 2018-08-10 09:59:25
回答 1查看 80关注 0票数 1

在bash shell中,我尝试读取json文件并加载到一个变量

代码语言:javascript
复制
eri@xyz:~/Documents/inbound>e1=$(eval echo $(cat ./deploy/request.json))

在获取该变量的输出时,我看到了-bash - command not found以及.json文件的实际内容

代码语言:javascript
复制
eri@xyz:~/Documents/inbound>"$e1"

-bash: { type:Pipeline, category:Software, risk:4, short_description:sample short description text, description:sample detailed description text, assignment_group: Services - Retail Services, cmdb_ci:Retail Service, u_version:1.0, start_date:2017-01-04 18:00:00, end_date:2017-01-04 19:00:00, backout_plan:see department for standard backout plan, implementation_plan:sample implementation plan, test_plan:sample text plan, production_system:false }: command not found

有没有办法抑制输出中的-bash - command not found

EN

回答 1

Stack Overflow用户

发布于 2018-08-10 10:05:08

不需要eval --只要用e1=$(< ./deploy/request.json)就行了。(感谢@shellter提供的语法- you don't even need to use cat!)

要显示变量,您需要

代码语言:javascript
复制
echo "$e1"

而不仅仅是"$e1"。与许多编程语言"$e1"不同,命令行上的REPL本身不会输出$e1的值。相反,它告诉bash尝试将$e1的全部内容解释为命令的名称。它不是命令的名称,所以bash会告诉您无法找到具有该名称的命令。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51777888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档