|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
Переименовать файлы с определенным расширением на нескольких жестких дисках23.04.2017, 12:40. Показов 2130. Ответов 15
Метки нет (Все метки)
Всем привет! Помогите разобраться чет не получается(
Суть такая: Нужен батник чтобы он находил все файлы с расширением .xml на нескольких жестких дисках (допустим С и D) и переименовывал их в db.xml (при этом если в одной папке больше таких файлов чем один то добавлял им цифру типо db.xml db1.xml db2.xml ... и т.д.) Заранее огромное спасибо!
1
|
|
| 23.04.2017, 12:40 | |
|
Ответы с готовыми решениями:
15
Переименовать все файлы с расширением, указанным в параметре 1, в файлы с расширением, указанным в параметре 2 |
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
|
| 23.04.2017, 20:05 | |
|
Теоритически это выглядит наверно так.Надо сравнивать пути файла который переименовывается сейчас с путем предыдущего файла,и если они совпадают,то приписавать цифру.
0
|
|
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
| 23.04.2017, 20:10 [ТС] | |
|
а как в коде это реализовать?
0
|
|
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
|||||||||||
| 24.04.2017, 00:07 | |||||||||||
|
Примерно так.Но он работает на всю глубину одного каталога
У меня нет желания проверять это на всем компе(Извините). Возможно для вашего варианта будет работать этот код: Для дисков C и D
1
|
|||||||||||
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
| 27.04.2017, 12:52 [ТС] | |
|
Спасибо за ответ!
Но я проверил первый код но он не сработал( не поменял имя не одного файла( пробовал от админа и пихал сам батник с этим кодом в разные места тоже не помогло( а второй код срабатывает только на файлы в папках которые находятся на рабочем столе( независимо от куда запускаю батник, а от админа не сработал даже на файлы на рабочем столе( пробовал на Win 7 Макс x32 ХЗ может у меня руки крюки) Добавлено через 20 часов 44 минуты Можешь подсказать в чем проблема?
0
|
|
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
||||||
| 27.04.2017, 13:02 | ||||||
Сообщение было отмечено valli_vasia как решение
Решение
Я не знаю в чем проблема.ТАм путь указан каталога который проверять надо.Может быть Вы полность скопировали код и не менял ипуть,а может быть Вы не поменяли расширение docx на свое.ЧО угодно может быть.Это я про первый код где указана только одна папка.
Добавлено через 8 минут А во втором коде наверно ошибка есть.Попробуйте так.Надо поставить \ после двоиточая.ФОрум его почему то съедает.
1
|
||||||
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
| 28.04.2017, 09:19 [ТС] | |
|
Спасибо огромное добрый человек! добавил \ и все заработало)
Помоги еще чутка) у нас есть еще сетевые диски если народ будет туда скидывать файлы которые нужно переименовать то что во втором коде дописать чтобы и на них искал? Добавлено через 1 минуту Ой еще забыл спросить как добавить во втором коде переименовывание скрытых файлов? Очень благодарен за оказанную помощь!
0
|
|
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
||
| 28.04.2017, 13:11 | ||
|
0
|
||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
| 28.04.2017, 16:23 | ||||||
|
можно так:
0
|
||||||
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
||
| 28.04.2017, 21:51 [ТС] | ||
|
0
|
||
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
||||||
| 30.04.2017, 11:03 | ||||||
Сообщение было отмечено valli_vasia как решение
Решение
Тестил на одном каталоге.Все работает.ВОт код на весь диск.Не тестил)Это вместе со скрытыми файлами.
чтоб Вас....Работает на весь диск....
1
|
||||||
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
| 30.04.2017, 16:57 [ТС] | |
|
0
|
|
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
|
| 30.04.2017, 17:18 | |
|
0
|
|
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
| 30.04.2017, 17:48 [ТС] | |
|
А почему не работает другой код вставленный после этого?
То есть создаю батник вот с таким содержимым: @echo off Setlocal EnableDelayedExpansion for %%a in (c:\,d:\) do (call :2 "%%a") exit /b :2 for /f "delims=" %%A in ('dir "%~1*.xml" /a:a /b /s') do ( call :1 "%%~dpA" ) exit /b :1 if "!b!"=="%~1" (exit /b) else (pushd "%~1"&&for /f "delims=" %%B in ('dir *.xml /a:a /b') do ( echo %%~aB|findstr h&&attrib -h "%%B"&&ren "%%B" "db!m!.xml"&&attrib +h "%%~dpBdb!m!.xml"&&set /a m+=1||ren "%%B" "db!m!.xml"&&set /a m+=1 ) ) set "b=%~1" set m= popd exit /b @echo off SetLocal EnableExtensions call :msg "Все файлы переименованы \nМожете запускать программу" Exit /B :msg chcp 866 >NUL& for /F "delims=" %%a in ("%~1") do chcp 1251 >NUL& call :convert "%%~a"& chcp 866 >NUL& Exit /B :convert set "text=%~1" (@for %%a in ("%text:\n=" "%") do @echo.%%~a) | msg * Exit /B И отрабатывает только первый код с переименованием а второй на вывод окна не срабатывает. Хотя по отдельности эти два кода в разных батниках работают на ура. Чет я совсем нуб(
0
|
|
|
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
|
|
| 01.05.2017, 08:35 | |
Сообщение было отмечено valli_vasia как решение
Решение
Попробуй в четвертой строке написать goto 3,а в своем коде уберите первые две строки и вместо них запишите :3
1
|
|
|
2 / 2 / 0
Регистрация: 09.12.2015
Сообщений: 26
|
|
| 01.05.2017, 11:38 [ТС] | |
|
Спасибо огромнейшее!!! все заработало идеально!
0
|
|
| 01.05.2017, 11:38 | |
|
Помогаю со студенческими работами здесь
16
Вывод информации о существующих жестких дисках Как вывести информацию о жестких дисках, подключенных к системе, в текстовый файл? На дисках появляются файлы с расширением exe и pif OpenFileDialog, отображать только файлы с определенным расширением Переименовать все файлы указанного каталога с расширением на заданную букву Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|