fnmatch

명칭
     fnmatch — 파일명이나 패스명을 조합한다

서식
     #include <fnmatch.h>
     int fnmatch(const char *pattern, const char *string, int flags)

해설
     fnmatch() 함수는, 쉘이 사용하는 규칙에 따라 패턴을 조합합니다.  string 인수가 지정하는 캐릭터 라인을 체크해,
     pattern 인수가 지정하는 패턴과 일치하는지 어떤지 확인합니다.

     flags 인수는, pattern (와)과 string 의 해석을 수정합니다.  flags 의 값은, 이하의 정수의 비트 단위의
     논리합입니다. 이 정수는, 인클루드 파일 fnmatch.h 그리고 정의되고 있습니다.

     FNM_NOESCAPE  통상, pattern 중(안)에서 backslash (‘\’) 의 뒤로 1 캐릭터가 계속되는 것이 나타날 때
                   마다, 그것은 그 캐릭터로 옮겨놓을 수 있습니다. 이 치환은, 그 캐릭터의 특수한 의미를 무효로 하기
                   위해서(때문에) 실행됩니다.  FNM_NOESCAPE 플래그를 설정하면(자), backslash 캐릭터는 통상
                   캐릭터로서 다루어집니다.

     FNM_PATHNAME  string 의 slash 캐릭터는, pattern 안의 slash와 명확하게 일치할 필요가 있습니다. 이
                   플래그를 설정하지 않으면 slash는 통상 캐릭터로서 다루어집니다.

     FNM_PERIOD    string 의 최초의 피리어드는, pattern 안의 최초의 피리어드와 명확하게 일치할 필요가 있습니다. 이
                   플래그를 설정하지 않으면 최초의 피리어드는 통상 캐릭터로서 다루어집니다. 「최초의 것」이라고 하는 말의
                   정의는, FNM_PATHNAME 의 지정에 의해 변화합니다.  string 의 제 1 캐릭터인 피리어드는,
                   항상 「최초의」피리어드입니다.  FNM_PATHNAME (을)를 설정했을 경우, slash의 직후의 피리어드도
                   「최초의」피리어드입니다.

     FNM_LEADING_DIR
                   pattern 하지만 문제 없게 일치한 후, 나머지의 /* (을)를 무시합니다.

     FNM_CASEFOLD  pattern (와)과 string 의 양쪽 모두로 대문자와 소문자의 구별을 무시합니다.

반환값
     fnmatch() 함수는, pattern 하지만 지정하는 패턴에 string 하지만 일치하면(자) 제로를 되돌립니다. 일치하지 않는
     경우는 값 FNM_NOMATCH (을)를 되돌립니다.

관련 항목
     sh(1), glob(3), regex(3)

표준
     fnmatch() 함수는, IEEE Std 1003.2 (“POSIX.2”) 에 준거하고 있습니다.

역사
     fnmatch() 함수는, 4.4BSD 에 추가되었습니다.

버그
     FNM_PATHNAME (을)를 지정해도, 패턴 ‘*’ (은)는 하늘 string와 일치합니다.