다운로드 폴더 파일 정리

반응형

 

다운로드 폴더 파일 정리

 

다운로드 폴더 파일들의 확장자들을 파악하여 폴더를 만들어 이동하기

최상위 디렉토리 및 1차 디렉토리안의 파일 확장자를 파악하여 대상

디렉토리로 이동 확장자별로 폴더를 만들어 파일들을 정리 그리고

파일명이 중복이 될경우 (2) 와 같은 번호 증가 표시 하여 파일명을

만들어 이동 D:\백업1 이라는 폴더를 만들고 그안에 확장자 별로 폴더

만들기 그리고 파일 이동 바탕화면에 D:\백업1 에대한 심볼릭 링크 만들기...

@echo off & setlocal enabledelayedexpansion
set "file_ext=txt exe pdf hwp jpg torrent doc"& ::확장자
set "srce=%userprofile%\downloads"& ::소스폴더 (Source)
set "dest=d:\백업1"& ::대상폴더 (Destination)
set "mlink=%userprofile%\desktop\파일정리"& ::심볼릭링크 만들기 (Mklink)

::소스폴더쪽의 확장자에 맞춰 대상 폴더에 확장자명으로 폴더 만들기
for %%a in (!file_ext!) do forfiles /p "!srce!" /m *.%%a >nul 2>&1 && if not exist "!dest!\%%a" md "!dest!\%%a"
 
::소스폴더에서 대상 폴더로 파일 이동 하기
for %%b in (!srce!\*) do (
set name=%%~nb
set ext=%%~xb& set ext=!ext:.=!
if not exist "!dest!\!ext!\%%~nxb" move "%%b" "!dest!\!ext!\%%~nxb"
)

::중복 파일 이름 증가 처리
for %%c in (!srce!\*) do (
set full=%%c
set file_name=%%~nc
set ext=%%~xc& set ext=!ext:.=!
set num=1
:loop
if exist "!dest!\!ext!\!name! (!num!).!ext!" set /a num+=1& goto:loop
)

::중복 파일 번호증가 이동
for %%d in (!srce!\*) do (
set full=%%d
set file_name=%%~nd
set ext=%%~xd& set ext=!ext:.=!
if not exist "!dest!\!ext!\!name! (!num!).!ext!" move "!full!" "!dest!\!ext!\!name! (!num!).!ext!"
)

::폴더 이동
if not exist "%dest%\other" md "%dest%\other"
xcopy "!srce!\*" "!dest!\other" /e /h /r
for /f "delims=" %%e in ('dir /b /a:d "!srce!"') do rd /s /q "!srce!\%%e"
if exist "!srce!\*" echo y | del "!srce!\*"
mklink /d "%mlink%" "!dest!"
endlocal & exit
반응형

댓글

Designed by JB FACTORY