터미널에서 여러 줄에 걸쳐 함수를 정의하는 방법은 무엇입니까?
# this doesn't work
function my_func { \
echo "number 5" \
}
매우 기본적입니다. 아직도 매우 성가시다.
답변1
\
여기서 계속할 필요는 없습니다 . 노력하다:
function my_func {
echo "number 5"
}
이 function
키워드는 필수가 아니며 다음을 사용할 수 있습니다 funcname () {...}
.
my_func() {
echo "number 5"
}
그런데 이것이 작동하지 않는 이유는 백슬래시가 함수 정의를 모두 한 줄로 만들고, 한 줄 함수 정의는 ;
bash에서 a로 끝나야 하기 때문입니다.
예를 들어 다음은 실패합니다.
my_func () { echo "number 5" }
이것은 작동합니다:
my_func () { echo "number 5" ; }
이와 같이:
function my_func { \
echo "number 5" \
; \
}