2013-07-21 8 views
2

명령 줄에서 몇 가지 명령을 쓰면 작동하지만 스크립트 파일에 같은 코드를 넣으면 오류가 발생합니다. 여기 는 내가 뭘하려고 오전입니다 :bash 스크립트의 구문 오류

USER=chandan-jay 
REPO=test-1 
echo "GitHub UserID: $USER" 
echo "Repository Name: $REPO" 
str={\"name\":\"$REPO\"} 
curl_response=($(curl -u "$USER" -H "Content-Type:application/json" https://api.github.com/user/repos -d $str)) 
echo ${curl_response[@]} 

코드 선 위에 실행 작업은 파일을 쉘에 줄 끝에서합니다. .sh로 파일에 함께 퍼팅 때 는 구문 오류가 발생합니다 (행 번호 (13)는 curl_response입니다) :

__git_create_repo_CLI.sh: 13: git_create_repo_CLI.sh: Syntax error: "(" unexpected__ 
+0

서식 팁 : 코드 블록을 서식 지정하기 위해 각 줄에 4 개의 공백을 들여 쓰기하십시오. – icktoofay

+0

이 코드는 사용자 이름을 변경하면 나에게 적합합니다. – hd1

+0

Bash 인터프리터를 사용하여 스크립트를 실행하고 있습니까? – ruakh

답변

2

지금처럼 비난하기 위해 통역을 설정

#!/bin/bash

-1

이 변화 시도 이

curl_response=($(curl -u "$USER" -H "Content-Type:application/json" https://api.github.com/user/repos -d $str)) 

curl_response=`curl -u "$USER" -H "Content-Type:application/json" https://api.github.com/user/repos -d $str` 

희망이

+0

** - 1 ** 아니요 아니요 아니요. [역 인용 부호가 없습니다.] (http://mywiki.wooledge.org/BashFAQ/082) 또한 변수를 배열이 아닌 스칼라로 설정합니다. – michaelb958

1

당신이 원하는 것을 같은 this 모습을 하는가하는 데 도움이? 방금 Mac OS X에서/bin/sh 인 bash에서 내 사용자 이름과 변경되지 않은 스크립트를 실행했습니다.