2017-12-03 15 views
0

나는 grunt-contrib-clean 스크립트를 작성하고 두 디렉토리를 제외한 디렉토리의 모든 서브 디렉토리를 삭제하려고합니다. 다음은 디렉토리 구조입니다.grunt-clean을 사용하여 서브 디렉토리 건너 뛰기

/resources/nls/ar 
/resources/nls/ar-AE 
/resources/nls/ca 
/resources/nls/ca-ES 
/resources/nls/en 
/resources/nls/en-US 
/resources/nls/localeElements.js 

등 모든 로케일에 대해 다음과 같습니다.

en, en-US 디렉터리 및 파일 localeElements.js 만 유지하고 싶습니다. 다음 Grunt 스크립트를 사용하고 있습니다. "nls"폴더에있는 단일 파일은 원하는대로 삭제되지 않습니다. 그러나 내가 원하지 않는 폴더 인 en & en-US 폴더를 포함하여 모든 폴더를 삭제합니다. 안내하고 도와주세요.

clean: { 
    postBuildSizeReduction: [ 
    '!../resources/nls/en/**', 
    '!../resources/nls/en-US/**', 
    '../resources/nls/*/' 
    ] 
} 

답변

1

나열된 디렉토리의 순서를 변경하여 삭제가 먼저오고 그 다음에 제외되도록하십시오.

clean: { 
    postBuildSizeReduction: [ 
     '../resources/nls/', 
     '!../resources/nls/en', 
     '!../resources/nls/en-US' 
    ] 
} 
+0

이 시퀀스도 사용해 보았지만 작동하지 않습니다 ... nls 아래의 모든 디렉토리를 삭제합니다. nls 디렉토리의 파일 만 삭제되지 않습니다. –

+0

@AsifMahmood - 방금 첫 번째 glob 경로의 끝에있는 '* /'를 제거하기 위해 사소한 편집을했습니다. 제거하고 시도하는 방법을보십시오. – fubar