|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Поиск тега с помощью bat |
|
|
CMD/BAT - Поиск тега с помощью bat
|
Новый участник Сообщения: 34 |
Всем Привет.
Подскажите решение проблемы: мне нужно что бы bat-ник в xml фаиле (текст идет сплошняком) находил тег <ID>*****</ID> и выводил его на экран и как опция брал его еще и буфер (если возможно), фаил лежит всегда по одному пути (меняется только буква диска, поэтому нужна переменная с запросом диска), максимум что я смог сделать это: echo off cls set /p x=Enter Letter: for /f "usebackq tokens=*" %%a in ("%x%:\1\file.txt") do (echo %%~a) pause но оно работает только в txt =( и выводит все. PS Извиняюсь за безграмотность (если глупость написал), ожидаю всезнающего гуру в поисках просветления ![]() |
|
Отправлено: 17:00, 07-10-2013 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата maxd2007:
|
|
Отправлено: 18:08, 07-10-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать Попробовал так:
echo off cls Find /I "<ID>*</ID>" "C:\1\file.txt" pause Ищет только жестко название т.е. <ID>*</ID> а не <ID>321</ID>, а xml вообще проигнорировал и выдал все что было в нем =( Windows XP x32 и Windows 7 x32 Кодировка уже 6 лет не менялась, по крайней мере в этих фаилах |
Отправлено: 18:50, 07-10-2013 | #3 |
Ветеран Сообщения: 1758
|
maxd2007, Батник без сторонних утилит плох для работы с текстом, я бы использовал PowerShell, но без примера файла ( валидного xml ), это пустой разговор. Попробуйте такой вариант, с учетом, что файл однострочный и в нем один элемент "ID":
Если разделитель "!" не подойдет ( например есть комментарий ), найдите уникальный для данного файла. |
Последний раз редактировалось Foreigner, 07-10-2013 в 20:28. Отправлено: 20:21, 07-10-2013 | #4 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать батник закрывается я не успеваю прочитать (что там, ошибка или ....), команда pause не помогает. В атаче пример xml фаила. И если честно то я не совсем понял на счет делителя (((
|
|
Последний раз редактировалось maxd2007, 21-11-2013 в 10:05. Отправлено: 14:22, 08-10-2013 | #5 |
Ветеран Сообщения: 1758
|
maxd2007, У меня все отработало правильно, в консоль вывел 3684640102, тоже самое сохранилось в буфере обмена.
Расскажите, как запускаете. И надеюсь, что правильно прописали путь к GarminDevice.xml ( вместо 1.txt ), например: На PowerShell: |
Отправлено: 19:29, 08-10-2013 | #6 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать В атаче принт скрин того что и как я делаю, (черный экран это проскакивает скрипт), попробую еще на PowerShell сегодня и отпишусь
|
Последний раз редактировалось maxd2007, 21-11-2013 в 10:05. Отправлено: 13:32, 09-10-2013 | #7 |
Ветеран Сообщения: 1758
|
Цитата maxd2007:
|
|
Отправлено: 18:58, 09-10-2013 | #8 |
Новый участник Сообщения: 34
|
Профиль | Отправить PM | Цитировать Блин извини это я из за того что не понял на счет делителя игрался и убрал их и забыл, а т.к. вечер был то забыл восстановить, а первый раз он закрывался сразу и я не видел что там, но сегодня (после Вашего последнего поста), вернул все как было и добавил "pause":
@echo off setlocal set /p content=<"C:\1\GarminDevice.xml" set "content=%content:<ID>=!%" set "content=%content:</ID>=!%" set "content=%content:<=^<%" set "content=%content:>=^>%" for /f "tokens=2 delims=!" %%i in ( "%content%" ) do ( echo %%i pause echo.%%i| clip ) Теперь я вижу номер ![]() |
Отправлено: 19:22, 09-10-2013 | #9 |
Ветеран Сообщения: 1758
|
Цитата maxd2007:
|
|
Отправлено: 19:34, 09-10-2013 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] CMD/BAT - С помощью bat-ника найти и удалить текст в файле | InVariable | Скриптовые языки администрирования Windows | 4 | 22-05-2015 20:06 | |
CMD/BAT - Поиск с помощью Bat ника | shiroq | Скриптовые языки администрирования Windows | 11 | 10-10-2013 07:47 | |
CMD/BAT - поиск с помощью Find | cyber_ua | Скриптовые языки администрирования Windows | 4 | 20-03-2012 16:40 | |
CMD/BAT - [решено] bat поиск | cyber_ua | Скриптовые языки администрирования Windows | 9 | 28-02-2012 01:18 | |
[решено] Вытянуть содержание HTML тега с помощью регулярных выражений | aesir | AutoIt | 4 | 28-08-2009 21:22 |
|