찾다

 >  Q&A  >  본문

linux - bash의 json 파일 출력을 입력으로 사용하는 방법

bash 및 zsh를 처음 접하는 스크립팅 초보자는 이제 Linux에서 많은 테스트 계정을 처리하기 위한 스크립트를 작성해야 합니다.

커맨드aws get-role....后,cmd中输出显示的是一个json文本,之后打算使用jq를 사용하여 키를 기준으로 값 중 하나를 구문 분석합니다. 그런데 처리 중인 계정이 많기 때문에 해당 계정에 해당하는 json 텍스트를 파일 형식으로 저장하여 처리할 수 없는 경우가 있습니다. ?

대략적인 논리는 다음과 같습니다.
최종 목표는 name의 값을 얻는 것입니다
name=$(cat (aws get-role....) | jq .Role.Name)但是我这么写的话系统会提示我zsh: number expected

괄호에 문제가 있는 걸까요? 하나님께 답을 구하십시오.
괄호 문제가 해결된다면 이 방법은 너무 길고 아름답지 않은 걸까요? 저도 스승님의 지도를 부탁드리고 있는데 정말 감사드립니다.

怪我咯怪我咯2720일 전915

모든 응답(2)나는 대답할 것이다

  • 迷茫

    迷茫2017-06-19 09:09:30

    해 보세요:

    으아악

    회신하다
    0
  • 伊谢尔伦

    伊谢尔伦2017-06-19 09:09:30

    cat命令后面跟的是文件名,操作是输出文件内容。然而aws get-role....输出到STDOUT的并非文件名而是一整个JSON字符串,所以觉得直接用name=$(aws get-role.... | jq .Role.Name)그렇습니다.

    회신하다
    0
  • 취소회신하다