Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение pdf файлов по имени в папку с аналогичном названием имени файла

Ответить
Настройки темы
CMD/BAT - Перемещение pdf файлов по имени в папку с аналогичном названием имени файла

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток уважаемые господа.
Есть задачка, в одной сетевой папке, находятся папки и pdf файлы.
Имена папок выглядят как:
Иванов Иван Иванович 14-;
Васильев Дмитрий Васильевич 11.20;
Властелин Колец Фродович 01.09.1200.

Имена PDF файлов, аналогичны названию папок.

Требуется все pdf файлы растасовать по папкам с аналогичным названием, желательно сделать перемещение, а не копирование.
А если папки не существует с таким именем, создать с именем pdf файла и закинуть туда pdf файлик.

Возможно ли сделать такой батик?

Отправлено: 11:32, 09-02-2022

 

Ветеран


Сообщения: 544
Благодарности: 35

Профиль | Сайт | Отправить PM | Цитировать


Навскидку:
Код: Выделить весь код
for /f "delims=*" %%i in ('dir /b *.pdf) do (md "%~ni" & move "%%i" "%~ni\")

-------
консольный клиент telegram для Windows: www.elapser.info


Отправлено: 11:59, 09-02-2022 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


К сожалению ни чего не происходит, после запуска батника

Отправлено: 12:21, 09-02-2022 | #3


Ветеран


Contributor


Сообщения: 2715
Благодарности: 1688

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@Echo Off
cls
>nul Chcp  1251
	Set "FileIn=Z:\Box_In\*.pdf"
	Set "BoxOut=Z:\Box_Out"
	
	FOR /F "usebackq delims=" %%f In (`2^>nul Dir "%FileIn%" /S /B /A:-D`) DO (
		2>nul Md "%BoxOut%\%%~nf"
		>nul Move /Y "%%f" "%BoxOut%\%%~nf\"
	)
pause
Exit /B
Пути пропишИте свои.

Цитата SurkovAA:
желательно сделать перемещение, а не копирование. »
Вот еще вариант: если в папке, например, "Иван Иванович" только один файл "Иван Иванович.pdf", то не вижу смысла после перемещения файла оставлять пустую папку "Иван Иванович". Удаляем ее:
Код: Выделить весь код
@Echo Off
cls
>nul Chcp  1251
	Set "FileIn=Z:\Box_In\*.pdf"
	Set "BoxOut=Z:\Box_Out"
	
	FOR /F "usebackq delims=" %%f In (`2^>nul Dir "%FileIn%" /S /B /A:-D ^|Sort /R`) DO (
		2>nul Md "%BoxOut%\%%~nf"
		>nul Move /Y "%%f" "%BoxOut%\%%~nf\" &&2>nul Rd "%%~dpf"
	)
pause
Exit /B
Если в папке что-то еще, папка удалена не будет.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 09-02-2022 в 13:52.


Отправлено: 12:54, 09-02-2022 | #4


Аватара для Fors1k

Старожил


Сообщения: 193
Благодарности: 112

Профиль | Отправить PM | Цитировать


Цитата megaloman:
Пути пропишИте свои. »
Почему вы всегда здесь делаете "И" заглавной?)

Отправлено: 13:12, 09-02-2022 | #5


Ветеран


Contributor


Сообщения: 2715
Благодарности: 1688

Профиль | Отправить PM | Цитировать


Fors1k,
Цитата Fors1k:
Почему вы всегда здесь делаете "И" заглавной? »
Чтобы обозначить ударение. Прямого запрета на это в правилах нет, хотя в рекомендациях видим:
Цитата:
Для выделения или постановки ударения на слово или фразу, используйте жирный шрифт или выделение цветом. Не используйте ЗАГЛАВНЫЕ буквы.
Опять же, здесь речь идёт о смысловом ударении на слово, но никак не на ударение внутри слова. Мне гораздо проще обозначить ударение в слове большой буквой.
А пропИшиете и пропишИте - несут немного разную смысловую нагрузку.
Или, еще лучше, писАть или пИсать.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 09-02-2022 в 13:49.


Отправлено: 13:21, 09-02-2022 | #6


Аватара для Fors1k

Старожил


Сообщения: 193
Благодарности: 112

Профиль | Отправить PM | Цитировать


Цитата megaloman:
Чтобы выделить ударение »
Это ударение - единственно возможное. Если же ударение будет на первую букву "и", то вторая уже будет "и" "е".
Так что здесь путаница в ударениях невозможна
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:27, 09-02-2022 | #7


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


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

Разобрался, работает, Спасибо уважаемый! Очень выручили!

Последний раз редактировалось SurkovAA, 09-02-2022 в 13:40.


Отправлено: 13:34, 09-02-2022 | #8


Аватара для Fors1k

Старожил


Сообщения: 193
Благодарности: 112

Профиль | Отправить PM | Цитировать


Цитата SurkovAA:
указывать пути? »
Пути или путь?
Цитата SurkovAA:
в одной сетевой папке, »

Отправлено: 13:41, 09-02-2022 | #9


Ветеран


Contributor


Сообщения: 2715
Благодарности: 1688

Профиль | Отправить PM | Цитировать


SurkovAA,
Цитата SurkovAA:
в одной сетевой папке, находятся папки и pdf файлы. »
Цитата SurkovAA:
Я в этих сверх технологиях, очень плохо разбираюсь.. »
Указать путь к файлу - это не сверхвысокая технология, это азбука.
В моих батниках специально выделяю такие вещи отдельными строками, чтобы их было удобнее менять. В Вашем случае (опять же, я не знаю Ваших реальных путей):
Код: Выделить весь код
	Set "FileIn=\\ИмяСервера\ИмяРасшареннойПапки\ИмяПапки\*.pdf"
	Set "BoxOut=Полное имя папки, где Вы создаёте папки с именами и куда Вы перемещаете свои pdf"
Цитата SurkovAA:
Требуется все pdf файлы растасовать по папкам с аналогичным названием »
Я предположил, что Вы перемещаете файлы на другой ресурс или другую папку.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 09-02-2022 в 13:54.


Отправлено: 13:46, 09-02-2022 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение pdf файлов по имени в папку с аналогичном названием имени файла

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Создание папки по имени файла и перемещение файла в эту папку. lovator Скриптовые языки администрирования Windows 20 30-03-2024 13:55
CMD/BAT - перемещение файлов на основании части имени файла mousesport Скриптовые языки администрирования Windows 4 22-09-2021 14:30
CMD/BAT - [решено] Перемещение файлов в папку, названную частью имени этого файла Numufar Скриптовые языки администрирования Windows 5 18-12-2018 12:46
CMD/BAT - перемещение файлов в каталог созданный из части имени файла surrender1 Скриптовые языки администрирования Windows 9 10-10-2013 14:42
CMD/BAT - [решено] Перемещение файлов из одной папки в разные в зависимости от имени файла Sarge81 Скриптовые языки администрирования Windows 4 20-09-2011 04:20




 
Переход