Как получить содержимое папки (включая пустые папки) для перемещения (не скопировано) в новую папку, исключая одну папку?Как переместить пустые папки и файлы в новую папку?
Я хочу переместить содержимое в папку Entity
в мою недавно созданную папку 2013\November Estimates
, которая находится в каждом объекте.
Макет папки 2013 \ 2 - Проекции ноября \ Фонд семья (32 из них, а также другой папка не касается) \ Entity (600 различных субъекты, уникальные для каждой семьи фонда)
Это текущая раскладка для каждого объекта:
Entity_01
Entity_01\2013
Entity_01\2013\November Estimates
Entity_01\entity.pdf
Entity_01\entity.xls
Entity_01\entity.doc
Entity_01\PY folder
Entity_01\Trash Folder
Entity_01\2012
Таким образом, все файлы и папки будут перемещены в November Estimates
но папка 2012
остается там, где она (продуцирующие следующую раскладку)
Entity_01
Entity_01\2013
Entity_01\2013\November Estimates
Entity_01\2013\November Estimates\entity.pdf
Entity_01\2013\November Estimates\entity.xls
Entity_01\2013\November Estimates\entity.doc
Entity_01\2013\November Estimates\PY folder
Entity_01\2013\November Estimates\Trash Folder
Entity_01\2012
Проблемы со следующей командной строкой:
FOR /f "delims=" %%b IN (entitylist.txt) DO (
pushd "%destdrive%:\%year%\%projections%\%%~a\%%~b\" && (
for /d %%c in (*) do if /i not "%%c"=="2012" move "%%c" "%estimates%"
move *.* "%estimates%"
popd
)
)
Полный BAT
@echo off
setlocal
SET "sourcedrive=Z"
SET "destdrive=C"
SET /a year=2013
SET "projections=2 - November Projections"
SET "Estimates=November Estimates"
SET "Yearend=Year End Filings"
DIR /b /ad "%sourcedrive%:\%year%\%projections%" >fundfamily.txt
start /wait "Fund Family" C:\Windows\System32\notepad.exe "fundfamily.txt"
FOR /f "delims=" %%a IN (fundfamily.txt) DO (
MD "%destdrive%:\%year%\%projections%\%%~a"
DIR /b /ad "%sourcedrive%:\%year%\%projections%\%%~a" >entitylist.txt
start /wait "%%~a entities" C:\Windows\System32\notepad.exe "entitylist.txt"
FOR /f "delims=" %%b IN (entitylist.txt) DO MD "%destdrive%:\%year%\%projections%\%%~a\%%~b\%year%\%estimates%"
FOR /f "delims=" %%b IN (entitylist.txt) DO MD "%destdrive%:\%year%\%projections%\%%~a\%%~b\%year%\%yearend%"
FOR /f "delims=" %%b IN (entitylist.txt) DO MD "%destdrive%:\%year%\%projections%\%%~a\%%~b\2012"
FOR /f "delims=" %%b IN (entitylist.txt) DO (
pushd "%destdrive%:\%year%\%projections%\%%~a\%%~b\" && (
for /d %%c in (*) do if /i not "%%c"=="2012" move "%%c" "%estimates%"
move *.* "%estimates%"
popd
)
)
)
возможно дубликат [Переместить содержимое папки в новую папку] (HTTP: // StackOverflow .com/questions/20724181/move-contents-of-folder-in-new-folder) –
/EXCLUDE не является параметром команды move. –
@mihai_mandis любые предложения о том, как я буду исправлять это? даже без EXCLUDE, я все еще получаю ошибку, а не желаемые результаты. – StrayedMonkey