쉘 함수는 단지 명령문일 뿐이며 값을 반환하지 않습니다. Bash에서 값을 반환하는 함수 작성에 대한 모범 사례를 공유할 수 있는 사람이 있나요?
두 문자열을 연결하는 함수가 있다고 가정해 보겠습니다.
JoinStrings() {
returnValue="$1$2"
}
내 코드에서 이 함수를 어떻게 재사용할 수 있나요? returnValue
발신자에게 어떻게 응답할 수 있나요 ? 이 함수 호출 후에 전역 변수로 사용해야 합니까? 이로 인해 어디에서나 전역 변수에 많은 버그가 발생합니다. 셸에서 코드를 재사용하는 방법은 무엇입니까?
답변1
유닉스와 GNU에서는표준 출력함수의 값은 반환값으로 생각할 수 있습니다.
다음은 쉘 명령 확장을 사용하는 예입니다 $(...)
.
JoinStrings() {
echo "$1$2"
}
joined_strings=$(JoinStrings string1 string2)
echo string1 and string2 joined are $(JoinStrings string1 string2)
return
명령의 종료 코드(상태 코드)를 설정하는 함수에 사용되는 쉘 문이 있습니다 . 종료 코드는 작은 정수입니다.