С Новым годом! Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/75: Рейтинг темы: голосов - 75, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14
1

Переместить файлы из подпапок

24.12.2013, 11:55. Показов 13486. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго вам времени суток,многие темы здесь очень помогли мне сэкономить время и силы на выполнение однотипных действий,но назрел вопрос,на решение которого у меня не хватает серого вещества,возможно он вам покажется банальным - но уж не обессудьте,я новичок.


Задача такова
Имеется структура папок Folder1 в нее вложена Folder2, в Folder 2 вложены файлы,надо переместить файлы из Folder 2 в Folder 1 и удалить Folder 2.
Желательно делать это по маске!

Если вопрос уже подымался на форуме - прошу не пинать,я не нашел!
И да,заранее благодарен!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.12.2013, 11:55
Ответы с готовыми решениями:

Скопировать определенные файлы из подпапок
Здравствуйте! Можете помочь в создании скрипта? Есть дерево папок: settings - 1 ---...

Переместить файлы
Помогите решить задачу: Переместить все файлы в заданной директории, в имени которых есть ЧИСЛО...

Переместить файлы и переименовать по порядку
Помогите пожалуйста! Есть папка 1, в которой много разных файлов с разными именами формата *txt...

Переименовать, переместить файлы в папках
Здравствуйте, прошу помощи в решении проблемы. Исходные данные: папка с фотографиями, в ней...

10
Модератор
Эксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
5616 / 2614 / 183
Регистрация: 27.06.2011
Сообщений: 10,624
24.12.2013, 12:27 2
invisibleip, чем не устраивает
Bash
1
2
xcopy /E /V /F /Y путь:\*.* путь куда копировать
del /s /q путь:\*.* что удалить в итоге нужно
0
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14
24.12.2013, 17:29  [ТС] 3
Это конечно работает,но немножко не то что надо,надо в идеале сначала получить список под папок находящихся в Folder1 чтобы переместить файлы из них в Folder1.

Добавлено через 3 часа 55 минут
Не нашел как отредактировать свое первое сообщение,поэтому отвечу еще раз!
мне нужно чтобы было как здесь
Bash
1
2
3
4
5
cd images
move *.* C:\Test\01\
cd..
rd images
pause...
скрипт запускается из C:\Test\01\ в которой присутствует под папка images и перемещает все файлы в C:\Test\01\ удаляя папку images,вроде как и ничего,и все работает,но если под папки имеют разные имена,начинается buttheart.
Надо так чтобы скрипт сам получал и подставлял адреса папок,если как получить адрес запуска скрипта я знаю,то вот как получить и работать с по папками-хоть убей не въеду.
0
1780 / 762 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
24.12.2013, 19:37 4
Цитата Сообщение от invisibleip Посмотреть сообщение
надо в идеале сначала получить список под папок находящихся в Folder1 чтобы переместить файлы из них в Folder1.
для чего вам список?

Не по теме:

@вам шашечки или ехать? :)

0
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14
25.12.2013, 15:59  [ТС] 5
Цитата Сообщение от sov44 Посмотреть сообщение
для чего вам список?

Не по теме:

@вам шашечки или ехать? :)

А что тут не понятного,для того чтобы скрипт мог получить список подпапок и переместить из них файлы на 1 уровень вверх!
0
1780 / 762 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
25.12.2013, 16:26 6
invisibleip, наверное так
Bash
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
setlocal enabledelayedexpansion
 
for /f "delims=" %%a in ('dir /b /ad *') do (
echo %%a
    for /f "delims=" %%b in ('dir /b /a-d "%%a\*"') do (
    copy "%%a\%%b" "%~dp0"
    rd /s /q "%%a"
    )
)
 
pause
файлы скопируются из папок, находящихся рядом с батником в директорию к батнику. Если в папках есть подпапки с файлами, добавьте во второй цикл ключ /s
После копирования папки с файлами уничтожатся.
0
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14
25.12.2013, 22:21  [ТС] 7
Цитата Сообщение от sov44 Посмотреть сообщение
invisibleip, наверное так
Bash
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
setlocal enabledelayedexpansion
 
for /f "delims=" %%a in ('dir /b /ad *') do (
echo %%a
    for /f "delims=" %%b in ('dir /b /a-d "%%a\*"') do (
    copy "%%a\%%b" "%~dp0"
    rd /s /q "%%a"
    )
)
 
pause
файлы скопируются из папок, находящихся рядом с батником в директорию к батнику. Если в папках есть подпапки с файлами, добавьте во второй цикл ключ /s
После копирования папки с файлами уничтожатся.

Перемещает только первый файл,остальное все удаляет! пожалуйста ткните носом куда надо добавить ключ /s?
0
1780 / 762 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
25.12.2013, 22:31 8
invisibleip, код рабочий, проверял.
Цитата Сообщение от invisibleip Посмотреть сообщение
пожалуйста ткните носом куда надо добавить ключ /s?
Bash
1
2
3
4
5
6
7
8
9
10
11
@echo off
setlocal enabledelayedexpansion
 
for /f "delims=" %%a in ('dir /b /ad *') do (
echo %%a
    for /f "delims=" %%b in ('dir /b /s /a-d "%%a\*"') do (
    copy "%%b" "%~dp0"
    rd /s /q "%%a"
    )
)
 pause
0
Эксперт WindowsАвтор FAQ
18014 / 7715 / 892
Регистрация: 25.12.2011
Сообщений: 11,496
Записей в блоге: 16
26.12.2013, 00:28 9
Цитата Сообщение от sov44 Посмотреть сообщение
rd /s /q "%%a"
и удалит вместе с файлами, которые остались там с одинаковым именем.
Цитата Сообщение от sov44 Посмотреть сообщение
for /f "delims=" %%a in ('dir /b /ad *') do (
а здесь еще и с System32

Добавлено через 58 секунд
Цитата Сообщение от HotBeer Посмотреть сообщение
del /s /q путь:\*.* что удалить в итоге нужно
Без ключа /F Ваш /Q особо бесполезен.

Добавлено через 1 минуту
Цитата Сообщение от HotBeer Посмотреть сообщение
xcopy /E /V /F /Y путь:\*.* путь куда копировать
А если были скрытые файлы, то не скопирует.
1
1780 / 762 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
26.12.2013, 06:55 10
Цитата Сообщение от Dragokas Посмотреть сообщение
и удалит вместе с файлами, которые остались там с одинаковым именем.
потому и пишу
Bash
1
copy "%%b" "%~dp0"
чтобы пользователь сам переименовывал одинаковые файлы
Цитата Сообщение от Dragokas Посмотреть сообщение
а здесь еще и с System32
с чего-бы это?
0
Эксперт WindowsАвтор FAQ
18014 / 7715 / 892
Регистрация: 25.12.2011
Сообщений: 11,496
Записей в блоге: 16
26.12.2013, 23:14 11
Цитата Сообщение от sov44 Посмотреть сообщение
потому и пишу
потому что
Цитата Сообщение от sov44 Посмотреть сообщение
rd /s /q "%%a"
пропущенные убъет.
Цитата Сообщение от sov44 Посмотреть сообщение
с чего-бы это?
потому что cd /d "%~dp0" нету.
0
26.12.2013, 23:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.12.2013, 23:14
Помогаю со студенческими работами здесь

Распарсить текстовик и переместить файлы
Добрый день, столкнулся с такой проблемой. Есть текстовик, в него внесены имена файлов. Есть папка...

Переместить все файлы, кроме себя
Здравствуйте! Данная программа перемещает все файлы в том числе и себя.Помогите пожалуйста...

нужна команда для переместить файлы
команда для переместить файлы и как сделать меню в командной строке

Переместить файлы из одной папки в другую
Деньдобрый Есть Папка 1 Файл 1 Файл 2 Есть


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru