8

У меня есть несколько файлов .rar в нескольких папках, например:

C:\Docs\Folder1\rarfile1-1.rar
C:\Docs\Folder1\rarfile1-2.rar
C:\Docs\Folder1\rarfile1-3.rar  

C:\Docs\Folder2\rarfile2-1.rar
C:\Docs\Folder2\rarfile2-2.rar
C:\Docs\Folder2\rarfile2-3.rar  

C:\Docs\Folder3\rarfile3-1.rar
C:\Docs\Folder3\rarfile3-2.rar
C:\Docs\Folder3\rarfile3-3.rar  

Я хочу переместить все файлы .rar в родительский каталог «C:\Docs». У меня есть более 3 папок, поэтому я думал о создании командного файла или что-то в этом роде. Каковы будут команды, чтобы сделать это?
Спасибо

6 ответов6

14

Я только что сделал приложение для командной строки, которое делает именно это (плюс показывает некоторую статистику) и искал, пытался ли кто-нибудь пытаться сделать это, чтобы я мог поделиться им и спасти кого-то от необходимости выяснять это.

Было очень весело писать. Требуется .NET 3.5, работает из командной строки, вызывается с параметром -h или без параметра для использования.

MoveFilesUpFromSubfolders
(исходный код)

Обратная связь плюс! :)

Да, и скриншот того, как это выглядит:

                               

7

Попробуйте это:

for /d %f in (docs\*) do (
pushd %f
move .\*.* ..
popd
)
5

Ну, ответ на ваш вопрос очень прост. Это не сценарий, но это подойдет.

Я предположил, что у вас запущены окна.

  • Поместите себя в каталог C:\Docs
  • Нажмите F3 (поиск)
  • Искать * .rar
  • Нажмите Crtl+A
  • Нажмите Ctrl+X
  • Закройте окно поиска и снова перейдите в C:\Dosc в проводнике.
  • Вставьте вырезанные файлы, нажав CTRL+V.
3

Всасывание сработало для меня в этом вопросе.

Suction - это бесплатное портативное приложение, которое поможет быстро разобраться в грязных папках.

Всасывание работает путем объединения родительских каталогов. Например, если ваш каталог изображений полон ненужных папок, перетащите папку в интерфейс Suction, и она покончит с папками, оставив вас только с файлами. Это также полезно для людей, которые загружают много вещей.

0

Это должно работать:

move C:\Docs\*\* C:\Docs
0

Примеры копирования или перемещения файлов из подкаталогов в один каталог

for /f "tokens = *"% a in ('dir "C:\Temp\Epub * .epub" /s /b') do copy /y "% a" C:\Temp\epub.

for /f "tokens = *"% a in ('dir "C:\Temp\Epub * .epub" /s /b') переместить /y "% a" C:\Temp\epub

"tokens = * - захватывать пути специальными символами

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .