윈 도 우 폴더 깊이 제한하여 파일,폴더 찾기 배치 함수
2023.01.12 19:29
안녕하세요? 질문 게시판 - https://windowsforum.kr/qna/18896097 - 보고 호기심에 만들어 봅니다. ^^
이전에도 특정 이름의 폴더/파일을 몇 단계 깊은 경로에서 찾아내는 것이 필요하겠다고 생각한 적이 있었는데,
오늘 질문을 보고서 재귀적인 함수(sub-procedure) 형태로 만들어 쉽게 배치파일에서 사용해보려는 시도입니다.
- 서브 프로시져 이름은 FINDRECUR(Find Recursive)로 정하였으나 다른 좋은 이름이 있을까요?
- FindInSub 등 원하시는 이름으로 변경하여 사용해보시면 좋을 것 같습니다.
사용법 : call :FINDRECUR <찾을 시작위치> <찾을 폴더나 파일 이름> <폴더 깊이> <찾은 경로를 돌려받을 변수 이름>
- 4개의 파라미터가 필요합니다.첫번째, 두번째 파라미터에 공백이 포함되어 있으면 쌍따옴표로 감싸줍니다.
- 첫번째 <찾을 시작위치> ; 찾기 시작할 루트 경로입니다. 마지막에 \을 포함하여야 합니다.
- 두번째 <찾을 폴더나 파일 이름> ; 드물겠지만 특수 문자가 있으면 오류날 가능성 있습니다.
- 세번째 <폴더 깊이> ; 첫번째 시작할 루트 경로 안에 있는 것이 1 LEVEL 입니다. 1,2,3 등 쌍따옴표 없이
- 네번째 <찾은 경로를 돌려받을 변수 이름> ; 변수 이름으로 합당한 것으로... 가능하면 공백,쌍따옴표 없이
- 검색 결과로 첫번째 찾은 경로 이름만 반환하고 멈춥니다. 필요시 검색 순서를 바꾸어 뒤에 것 부터 찾을 수도 있습니다.
- <폴더 깊이>에 따라 속도 차이가 있고, $RECYCLE.BIN System Volume Information 등 숨긴 폴더는 제외합니다.(-h)
- FINDRECUR 사용예는 아래 스크린샷을 참고하십시오.
- 찾았을때
- 못찾았을때
일 마치고 잠깐 해본다는 것이 시간이 금방가네요. 일 마무리해야 해서 일단 올립니다.
테스트 가능하신 분은 개선점이나 오류를 댓글로 올려주시면 수정해보겠습니다.^^ 앗! 퇴근=3=3=3
댓글 [11]
-
cungice 2023.01.12 19:46
-
가로등 2023.01.12 20:21
순서가 가장 먼저인 드라이브와 폴더에서, 첫번째로 발견되는 검색폴더를 결과 값으로 보여주네요.
많은 도움이 되었습니다. 감사합니다.
-
지후빠 2023.01.12 20:30
검색 순서는 D E F G H I J K L M N O P Q R S T U V W X Y Z 순서를 바꾸거나 제한하여 수정할 수 있습니다.
예를 들면 Z Y W V ~~ D C 등으로... ㅎ~
확인 댓글 감사합니다. ^^
-
가로등 2023.01.13 00:54
어이쿠! 제가 감사합니다. ^^
-
슈머슈마 2023.01.12 21:00
지후빠님은 다양하게 연구를 하시네요.
감사합니다.
-
지후빠 2023.01.12 23:06
이전에 vbs에서 해보던 것이라서 개념상 비슷해서요. ^^
-
왕초보 2023.01.12 21:29
cmd로도 가능한 작업이라는것을 글을 보고 알았습니다
좋은 선물 감사합니다..
-
지후빠 2023.01.12 23:08
검색해보니 쓸만하게 눈에 띄는 것이 없어서 해보게 되었습니다. ^^
-
샤 2023.01.12 22:28
수고하셨습니다.
-
메리아 2023.01.13 00:27
저도 시간이 걸리는 문제 때문에 답답했는데
깊이 제한을 이렇게 할 수 있군요.
많이 배워갑니다. ^^
-
지후빠 2023.01.13 11:00
이전에는 for /d, for /r 쪽으로만 생각하다 보니 잘 안되었었습니다. ^^
번호 | 제목 | 글쓴이 | 조회 | 추천 | 등록일 |
---|---|---|---|---|---|
[공지] | 강좌 작성간 참고해주세요 | gooddew | - | - | - |
4348 | 윈 도 우| 윈도 에러 생길때, 모든 이벤트 로그 한꺼번에 보기 [10] |
|
1283 | 10 | 06-23 |
4347 | 윈 도 우| OneDrive 설치 방지, Microsft Edge 바로가기 생성 방지 [3] | 무월 | 1066 | 11 | 06-23 |
4346 | 윈 도 우| 윈도우10 & 11 작업표시줄 시계에 요일 나오게 하는 방법! [28] | 무월 | 2440 | 33 | 06-21 |
4345 | 윈 도 우| 한글 자음 모음 분리 현상 해결 방법 [7] | 무월 | 1337 | 14 | 06-21 |
4344 | 기 타| 레마클로님 wifi on/off 스크립트 (수정) pnputil 추가 [10] | 슈머슈마 | 900 | 7 | 06-20 |
4343 | 윈 도 우| 윈도우11 네트워크 인터넷 연결 없이 설치하기 [6] | 무월 | 2389 | 16 | 06-20 |
4342 | 윈 도 우| 파워쉘로 움직이는 .gif 바로 만들기 [6] |
|
1007 | 10 | 06-18 |
4341 | 기 타| Windows 10 pe 디스플레이 레지스트리 [4] | bangul | 1544 | 16 | 06-13 |
4340 | 윈 도 우| Windows 11의 Microsoft 스토어에서 앱 다운로드 중지를 해... | VᴇɴᴜꜱGɪ | 1103 | 4 | 06-13 |
4339 | 윈 도 우| Internet Explorer 11 강제 실행 [15] | 무월 | 2708 | 22 | 06-10 |
4338 | 윈 도 우| Windows 11에서 그룹화를 비활성화하는 방법 | VᴇɴᴜꜱGɪ | 742 | 2 | 06-10 |
4337 | 윈 도 우| NTP 서버&클라이언트 설정 하기 (윈도우 시간 동기화) [5] | 무월 | 1186 | 7 | 06-03 |
4336 | 윈 도 우| 배치로 방화벽 (인바운드/아웃바운드) 영역 IP 추가 설정 ... [6] | 무월 | 1253 | 13 | 06-03 |
4335 | 소프트웨어| PC 카카오톡 광고 제거 (6차 수정) [49] | CraXicS | 6707 | 55 | 05-29 |
4334 | 기 타| 특정 폴더 파일 확장자 폴더 별로 정리 [4] | 슈머슈마 | 1404 | 9 | 05-29 |
4333 | 소프트웨어| 우클릭/새로 만들기에 날짜로 폴더/파일 만들기 [14] | 지후빠 | 1531 | 25 | 05-28 |
4332 | 기 타| pe의 Registry.cmd 파일 수정 [1] | bangul | 604 | 8 | 05-28 |
4331 | 모 바 일| [팁] 카카오톡 - '채팅방 조용히 나가기' [1] | asklee | 1327 | 6 | 05-28 |
4330 | 소프트웨어| 특정 프로그램을 인터넷 차단하는 방법(인증문제 등...) [3] | 사랑이7 | 2625 | 24 | 05-26 |
4329 | 윈 도 우| 우클릭 [새로 만들기] 날짜로 폴더/파일 만들기 [24] | 지후빠 | 1484 | 23 | 05-26 |
수고 많으셨습니다. 감사합니다.