강좌 / 팁

윈 도 우 특정 폴더 내 임의 파일/폴더 선택 배치 함수

2023.01.29 22:56

지후빠 조회:700 추천:16

안녕하세요?

게시물 보다가 궁금하여 검색해보았는데 이거다 싶은 것이 없어서 검색한 것 참고하여 만들어 봤습니다.

어떤 폴더 내의 파일이나 폴더를 랜덤하게 하나 선택하는 batch function 입니다.

 

예를 들어, 윈도우11에서 C:\Windows\Web\Wallpaper 하위 폴더와 파일 구조는 다음과 같습니다.

여기에서 C:\Windows\Web\Wallpaper 하위의 임의 jpg 파일이나 Theme? 폴더를 선택하고 싶을때 사용할 수 있습니다.

C:\Windows\Web\Wallpaper\Extended

C:\Windows\Web\Wallpaper\Spotlight

C:\Windows\Web\Wallpaper\ThemeA

C:\Windows\Web\Wallpaper\ThemeB

C:\Windows\Web\Wallpaper\ThemeC

C:\Windows\Web\Wallpaper\ThemeD

C:\Windows\Web\Wallpaper\Windows

C:\Windows\Web\Wallpaper\Spotlight\img14.jpg

C:\Windows\Web\Wallpaper\Spotlight\img50.jpg

C:\Windows\Web\Wallpaper\ThemeA\img20.jpg

C:\Windows\Web\Wallpaper\ThemeA\img21.jpg

C:\Windows\Web\Wallpaper\ThemeA\img22.jpg

C:\Windows\Web\Wallpaper\ThemeA\img23.jpg

C:\Windows\Web\Wallpaper\ThemeB\img24.jpg

C:\Windows\Web\Wallpaper\ThemeB\img25.jpg

C:\Windows\Web\Wallpaper\ThemeB\img26.jpg

C:\Windows\Web\Wallpaper\ThemeB\img27.jpg

C:\Windows\Web\Wallpaper\ThemeC\img28.jpg

C:\Windows\Web\Wallpaper\ThemeC\img29.jpg

C:\Windows\Web\Wallpaper\ThemeC\img30.jpg

C:\Windows\Web\Wallpaper\ThemeC\img31.jpg

C:\Windows\Web\Wallpaper\ThemeD\img32.jpg

C:\Windows\Web\Wallpaper\ThemeD\img33.jpg

C:\Windows\Web\Wallpaper\ThemeD\img34.jpg

C:\Windows\Web\Wallpaper\ThemeD\img35.jpg

C:\Windows\Web\Wallpaper\Windows\img0.jpg

C:\Windows\Web\Wallpaper\Windows\img19.jpg

 

pick_one_randomly.bat

pick_one_randomly.jpg

 

배치 파일에 만든 5개의 함수가 있는데, 앞쪽 4개는 종류별로 만들어보고, 5번째 :pickone 하나로 합친 것입니다.

앞쪽 4개는 참고용이라 5번째 :pickone 만 설명드리겠습니다. 옵션별 사용 예제 4개가 배치파일에 들어있습니다.

 

:pickone <start root> <file type> <variable assigned> <option = /r,/d,"/d /r">

setlocal enabledelayedexpansion & pushd %~1 & set i=0

for %~4 %%# in (%~2) do set "#!i!=%%~#" & set /a i+=1

set /a #="%random% %% i"

set "##=!#%#%!" & set "##=%~1\!##:%~1\=!"

endlocal & set "%~3=%##%" & exit /b

 
call :pickone <start root> <file type> <variable assigned> <option = /r,/d,"/d /r">
- 첫번째 <start root> ; C:\Windows\Web\Wallpaper 형태로 끝에 \ 없이 폴더를 지정, 공백 포함시 쌍따옴표로 묶어줍니다.
- 두번째 <file type> ; 파일 타입이나 폴더명, 와일드 카드 사용, *,jpg Theme? 등
- 세번째 <variable assigned> ; 선택한 전체 경로를 할당할 변수 지정, 예) pick1
- 네번째 <option = /r,/d,"/d /r"> ; 생략시 <start root> 경로내에서 파일만 찾고, /d 는 폴더를 대상으로, /r 은 서브 폴더 포함한 전체에서, "/d /r" 은 서브 폴더 포함하여 폴더를 대상으로 찾습니다.
 
임의 파일을 선택하여 실행(재생)하거나 배경화면으로 지정하는 등에서 사용할 수 있을 것 같습니다.^^
밤이 깊어 갑니다. 편히 주무십시오. ^^;
 
pick_one_randomly_code.jpg

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
73 모 바 일| Mobile PowerDirector 강좌 Ken Burns 사진에 모션(움직임)... 무림거사 809 1 07-24
72 소프트웨어| CryptoData (암호화) - Firefox 및 Chrome 부가 기능 VenusGirl 809 3 05-22
71 윈 도 우| pe내장 크롬 설정파일 백업 복원하기.. [2] 센돔타오르 804 10 03-21
70 윈 도 우| 프로그램 스크립트 만들기 2부. win10xpe .script edit [33] 지연서연아 802 25 05-03
69 모 바 일| Mobile PowerDirector Chroma Key 크로마키 사용법 강좌 murimgasa 800 1 12-25
68 윈 도 우| Hex 비교 및 수정 스크립트 V1.60 (bincmp) [3] 히이이잌 797 8 12-24
67 윈 도 우| 제품 및 서비스 수명 주기 정보 검색(미리 보기) [1] 내꼬 796 4 09-09
66 윈 도 우| 파일에 대한 썸네일 미리보기를 비활성화하지 않고 폴더 썸... 깨블리 786 2 05-31
65 하드웨어| 노트북-GIGABYTE p2542 바이오스 없뎃 세븐좋아 778 1 01-28
64 윈 도 우| 프로그램 스크립트 만들기 1부. win10xpe .script edit [19] 지연서연아 777 25 05-02
63 소프트웨어| Bcd 항목 1회성 부팅하기-VHDmanLite [7] 카멜 768 15 03-04
62 모 바 일| Kinemaster강좌 비데오에서 음악만 추출 방법 무림거사 763 1 08-09
61 소프트웨어| Windows 10 및 11에서 Google Chrome에서 스크린샷을 찍는 ... [1] VᴇɴᴜꜱGɪ 761 3 05-13
60 소프트웨어| Pecmd.ini 위치를 Windows폴더로 이동 [6] 카멜 756 10 02-10
59 모 바 일| Mobile #Powerdirector강좌 #크로마키무대 동영상을  다른... [1] 무림거사 754 2 06-24
58 모 바 일| AirPrint 설정 및 호환 프린터 목록 [1] asklee 753 3 08-18
57 모 바 일| 스마트폰 동영상제작앱 #Kinemaster 강좌 목록 murimgasa 750 1 02-02
56 모 바 일| Kinemaster강좌 시동영상 제작법, Ending Credit 제작법 무림거사 743 1 08-18
55 기 타| dos에서 글자 색상 바꾸기 (영상) [3] 코요88 740 7 08-11
54 윈 도 우| Windows 11에서 그룹화를 비활성화하는 방법 VᴇɴᴜꜱGɪ 738 2 06-10
XE1.11.6 Layout1.4.8