현재 bash에서 실행되는 단위 테스트를 수행하고 있습니다. 단위 테스트는 bash 스크립트에서 초기화, 실행 및 정리됩니다. 이 스크립트는 보통 init (), execute () 및 cleanup () 함수를 포함합니다. 그러나 필수 사항은 아닙니다. 그것들이 정의되어 있는지 여부를 테스트하고 싶습니다.
나는 이전에 소스를 greping하고 seding 하여이 작업을 수행했지만 잘못된 것 같습니다. 더 우아한 방법이 있습니까?
편집 : 다음 코드는 매력처럼 작동합니다.
fn_exists()
{
LC_ALL=C type $1 | grep -q 'shell function'
}
type -t
및 을 사용하여 grep을 저장할 수 있습니다 ==
.
type test_function
말합니다 . test_function on funktio.
ist eine Funktion
LC_ALL=C
resque에
fn_exists foo || foo() { :; }