2010-04-16 4 views
0

자동 완성 함수에 glob 함수를 사용하고 있습니다.글로브 함수 (c) 및 백업 파일 (file ~)

matched = ~/.tcsh 
glob(matched, 0, NULL, &pglob); 

글로브는 문자에 일치하는 모든 파일을 넣어 ** 내가 그것을 인쇄 할 때 내가 가진 : 그것은 설명하기 어렵 기 때문에 나는 당신에게 문제를 보여주는거야

case[0] = .tcshrc 
case[1] = 

난에 .tcshrc~이 있어야합니다 경우 [1],하지만 아무것도 = S는,이 "

glob(matched, GLOB_TILDE, NULL, &pglob); 

같은 플래그"GLOB_TILDE "를 본 적이하지만 누군가가 나를 도울 수 있습니다! 아무 것도 변경하지 않는 이유는 무엇입니까?

+6

있습니까? –

+0

이 질문은 기껏해야 혼란 스럽습니다. 'case [0]'는 무엇입니까? – Earlz

답변

1

GLOB_TILDE 플래그는 ~가 glob 앞에 나타날 때만 출력에 영향을줍니다. 여기를 참조하십시오 :

문제에 관해서는

http://www.gnu.org/s/libc/manual/html_node/More-Flags-for-Globbing.html

, 당신의 일치 값이 잘못 나에게 나타납니다. 그것은 자동 완성에 유용 할 수 있도록 당신이

matched = ~/.tcsh* 

내가 이전의 예를도 처음 발견 방법과 같은 조금 혼란 스러워요 : 그것의 끝 즉를 *을 고집해야처럼 보인다. 이 매뉴얼 페이지 문서의 하단 부분은 너무 흥미로운 예제를 가지고 : 당신은 C#을 태그가이 질문을 하시겠습니까

http://www.opengroup.org/onlinepubs/000095399/functions/glob.html