|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Сохранение структуры папок и ее воссоздание с текстовыми файлами вместо файлов |
|
CMD/BAT - [решено] Сохранение структуры папок и ее воссоздание с текстовыми файлами вместо файлов
|
Новый участник Сообщения: 16 |
Есть папка с названием "Структура1" в ней много файлов и подпапок. Файлы и подпапки которые находятся в ней содержат имена из: знаков, русских, английских букв. Есть еще вторая пустая папка с названием "Структура2". Нужно скопировать структуру всех подпапок, которые находятся в папке "Структура1" в папку "Структура2" но без файлов которые в ней находятся, а вместо файлов в ту же папку "Структура2" создать пустые txt-файлы с их именами и плюс с датой когда был создан тот или иной файл.
До батника вид такой: Структура1: Документ.doc, Фото.jpg ; Подпапка2: Программа.exe, Текст.txt ; Подпапка3: MP3.mp3, MP4.mp4, AVI.avi Структура2: После выполнения батника должен вид такой быть: Структура1: Документ.doc, Фото.jpg ; Подпапка2: Программа.exe, Текст.txt ; Подпапка3: MP3.mp3, MP4.mp4, AVI.avi Структура2: Документ - 02.04.2020-12.05.34.txt, Фото - 14.03.2020-17.14.45.txt ; Подпапка2: Программа - 21.05.2020-12.05.34.txt, Текст - 02.02.2020-15.05.43.txt ; Подпапка3: MP3 - 02.06.2020-12.05.34.txt, MP4 - 02.06.2020-12.05.34.txt, AVI - 02.06.2020-12.05.34.txt Все что получилось у меня это создать батник который сохраняет структуру подпапок в текстовый файл, а потом запуском еще вторым батником из ранее сохраненного текста структуры подпапок восстанавливать структуру т.е. таким карявым методом как бы создавать копию структуры подпапок, правда для это мне приходится менять внешний жесткий диск, так как все скопированные пути на восстановление в тестовом файле начинаются с него (папка "Структура1" для примера находится на внешнем жестком диске). И после этого я уже с внешнего жесткого диска копирую структуру подпапок в нужную мне папку, но это уж совсем неудобно. Переписать пути с помощью батника так, чтобы подпапки восстановились в конкретную папку т.е. в папку "Структура2" не знаю как. На втором шаге, я нашел в интернете: "создание пустых txt-файлов с именами содержимого папки с помощью батника", но батник создает текстовые файлы с именами файлов из одной папки в которой запустился, а в подпапках нет. Тут нужно еще чтобы текстовые файлы создавались не в той папке откуда берутся имена ("Структура1"), а чтобы текстовые файлы создавались в папке "Структура2" после того как туда скопируется структура пустых подпапок. Я совсем запутался в кодах батника. Помогите пожалуйста! Народ, кто в этом разбирается?! как это можно реализовать в батнике? |
|
Отправлено: 13:10, 02-06-2020 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Да vbs тоже подходит! Если сможете сделать и на vbs буду очень рад
![]() |
Отправлено: 15:57, 03-06-2020 | #21 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 111
|
Цитата megaloman:
|
|
Отправлено: 17:53, 03-06-2020 | #22 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Serezha373737:
![]() Цитата Serezha373737:
![]() |
||
Отправлено: 18:14, 03-06-2020 | #23 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 19:48, 03-06-2020 | #24 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать artenaki, любая пунктуация, которая не входит в OEM/866.
Serezha373737, это безграмотность, а вовсе не «профессиональный жаргон», литератор Вы наш. |
Отправлено: 19:59, 03-06-2020 | #25 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 20:23, 03-06-2020 | #26 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать VBS сохранить 1251
BoxIn = "D:\Мой контент" BoxOut = "Z:\Box_Out" Set FSO = CreateObject("Scripting.FileSystemObject") If Right(BoxIn, 1) <> "\" Then BoxIn = BoxIn + "\" If Right(BoxOut, 1) <> "\" Then BoxOut = BoxOut + "\" Call Directory(FSO, BoxIn, "", BoxOut) MsgBox "Сделано!" '---------------------End Sub Sub Directory(FSO, DName, DIn, DOut) Set D = FSO.GetFolder(DName) Dold = D.Path + "\" If DIn = "" Then DIn = Dold DNew = Replace(Dold, DIn, DOut) If Not FSO.FolderExists(DNew) Then FSO.CreateFolder (DNew) Set Files = D.Files For Each iFile In Files Dt = CStr(iFile.DateLastModified) Dt = Replace(Dt, " ", "_") Dt = "-" + Replace(Dt, ":", ".") + ".txt" Set FF = FSO.CreateTextFile(Dnew + iFile.Name + Dt, True): FF.Close Next Set SubD = D.SubFolders For Each Direct In SubD Call Directory(FSO, Direct, DIn, DOut) Next End Sub |
------- Последний раз редактировалось megaloman, 03-06-2020 в 20:41. Отправлено: 20:34, 03-06-2020 | #27 |
Старожил Сообщения: 193
|
Профиль | Отправить PM | Цитировать Цитата Serezha373737:
![]() |
|
Отправлено: 20:56, 03-06-2020 | #28 |
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать megaloman, СПАСИБО!!! Вы просто волшебник, настоящий профессионал!!!
![]() ....................................................................... Цитата Fors1k_m:
Кто мне помогал ОГРОМНОЕ СПАСИБО! Тему можно закрыть ![]() |
|
Отправлено: 21:19, 03-06-2020 | #29 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Serezha373737, Без перебранок, пожалуйста! Полезнее спокойно разобраться, в чем дело.
ИМХО, каждый, кто предлагает код, его тестирует и уверен в его работоспособности. PowerShell, возможно, у Вас более старой версии. Ради интереса: В командном окне запустите PowerShell Выполните команду Host Посмотрите версию. |
------- Отправлено: 21:31, 03-06-2020 | #30 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - Перенос файлов и папок с сохранением структуры | Kenwood | Скриптовые языки администрирования Windows | 3 | 20-09-2019 14:54 | |
VBS/WSH/JS - Скрипт для забора файлов и папок (с сохр. структуры) из неск. сетевых папок в одну л. | DjBoBo | Скриптовые языки администрирования Windows | 0 | 19-07-2016 16:30 | |
CMD/BAT - [решено] работа с текстовыми файлами | YuKar | Скриптовые языки администрирования Windows | 4 | 19-07-2012 17:10 | |
CMD/BAT - работа с 2 текстовыми файлами, именами файлов и всё в цикле | Тишина | Скриптовые языки администрирования Windows | 4 | 15-07-2012 20:26 | |
CMD/BAT - [решено] Сохранение структуры папок и ее воссоздание с помощью командного файла | Vadikan | Скриптовые языки администрирования Windows | 8 | 22-07-2009 01:56 |
|