함수를 작성하려고 하는데 구문 오류가 발생합니다. 다음은 내 기능입니다.
checkNoOfParameter () {
if [[ ${1} -eq ${2} ]]
then
job_Status = $true
else
job_Status = $false
echo "Please provide all \"${2}\" arguments with single space separation"
readArgumentsFromUser ${2}
}
나는 다음과 같이 함수를 호출합니다.
readArgumentsFromUser () {
read -a input
checkNoOfParameter ${#input[*]} ${1}
}
readArgumentsFromUser 3
답변1
fi
함수를 닫기 전에 닫는 if 문이 누락되었습니다 .}
또한 작업에 있어서는 안 되는 공백이 있으므로 "job_Status: 명령을 찾을 수 없음" 오류가 발생합니다. 양쪽에서 공백을 제거하십시오 =
.
답변2
"fi"가 누락되었습니다.
checkNoOfParameter () {
if [[ ${1} -eq ${2} ]]
then
job_Status = $true
else
job_Status = $false
echo "Please provide all \"${2}\" arguments with single space separation"
readArgumentsFromUser ${2}
fi
}
또한 "[[ ... ]]" 안에 "-eg"를 사용하지 마십시오.
이러한 문제를 해결하려면 이 도구를 확인하십시오.https://www.shellcheck.net/