
다음과 같은 디렉터리가 있습니다.
Root Folder
- Folder A
- Subfolder
- File1
- File2
- File3
- Folder B
- Subfolder
- File1
- File2
- File3
- Folder C
- Subfolder
- File1
- File2
- File3
이제 하위 폴더 및 파일을 한 수준 위로 이동하고 폴더가 위로 이동되면 폴더를 삭제하여 다음과 같이 보이도록 하고 싶습니다.
Root Folder
- Subfolder
- File1
- File2
- File3
- Subfolder
- File1
- File2
- File3
- Subfolder
- File1
- File2
- File3
Windows에서 이 작업을 수행하는 일괄 처리 방법이 있습니까?
답변1
"하위 폴더"의 이름과 중복되지 않는 "폴더 [a|b]"에 대한 패턴이 있다면 그렇습니다. 이것은 매우 간단한 배치 스크립트입니다.
for /d %%d in ("folder*") do call :doit "%%d"
exit /b
:doit
@echo.Moving contents of "%~1" to "%cd%"...
pushd "%~1"
forfiles /c "cmd /c move @file .."
popd
@echo.Removing "%~1"
rd "%~1"
exit /b
또, 그것은매우이를 위해서는 폴더 이름("folder*")에 대한 패턴이 필요하다는 점을 이해하는 것이 중요합니다. 이것이 콘텐츠 폴더 내에서 복제되면~ 할 것이다데이터를 잃습니다.