쓰기 bash
기능. 함수 이름에 하이픈이 포함될 수 있는 것 같습니다: -
.
그러므로 indus-headrc ()
그리고 indus-tailrc ()
. 밑줄만 허용되는 줄 알았는데.
답변1
Bash에 대한 일반적인 오해는 함수 이름이 변수와 동일한 규칙을 따라야 한다는 것입니다. Bash 매뉴얼에서는 다음을 권장합니다.
문자, 숫자, 밑줄로만 구성되고 문자나 밑줄로 시작하는 단어입니다. 이름은 쉘 변수 및 함수 이름으로 사용됩니다. 식별자라고도 합니다.
실제로 Bash 함수 이름은 인쇄 가능한 거의 모든 문자가 될 수 있습니다. 예를 들어, 사전 증가 단항 함수를 정의할 수 있습니다.
function ++ { (( $1++ )); }
물론 제정신인 사람이라면 누구나 여전히 그의 조언을 따를 것입니다.표준 함수 명명.
POSIX-ly( )를 작성하려고 하면 #!/bin/sh
하이픈과 오류가 허용되지 않습니다.
구문 오류: 잘못된 함수 이름
결론적으로
그래서 나에게 묻는다면:
비표준 문자를 포함할 수 있습니까? 예.
그럼 사용해야 할까요? 절대적으로하지! 이식성이 손상될 수 있으므로 비표준 이름을 사용하면 안 됩니다. POSIX를 준수하는 것은 좋은 습관을 기르는 좋은 방법입니다.