쉘 스크립트에서 함수를 생성해야 하는데 함수 이름에 특수 문자가 포함되어야 합니다. 좋다
>()
{
echo $1 $2
}
여기 내 함수 이름은 >
가능하다면 위와 같이 어떻게 제공할 수 있습니까? 시도했지만 오류가 발생했습니다.
답변1
대부분의 쉘은 함수 이름을 따옴표가 필요하지 않은 문자로만 제한합니다 >
.
함수 이름으로 허용하는 몇 가지 셸에서도 >
(zsh만 알고 있습니다) 호출된 함수를 정의하는 것은 >
명령으로 호출되는 경우에만 작동합니다 >
(인용 부호가 필요함, 즉 \>
or 또는 ">"
실행 '>'
). 리디렉션 작동 방식은 변경되지 않습니다.
일반 셸에는 스크립트의 후속 부분이 리디렉션을 수행할 때 발생하는 상황을 구성할 수 있는 기능이 없습니다. 이런 종류의 기능이 필요한 경우 쉘은 충분히 유연한 언어가 아닙니다. 하지만 더 나은 해결 방법이 있을 수도 있습니다.어떤 문제를 해결하고 싶어도-- 아마도 쉘 스크립트에서 이 문제를 해결하는 것이 가능할 것입니다.