![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Спецсимволы при перенаправлении |
|
CMD/BAT - Спецсимволы при перенаправлении
|
Новый участник Сообщения: 5 |
В общем возникла проблема при написании батника:
считываю построчно текстовый файл и перенаправляю строки в другой тестовый файл, но проблема в том что в файле некоторые строки содержат спецсимволы (<>&) и при перенаправлении, через обычное echo возникают ошибки. Можно ли как-то за экранировать эти символы, что бы в новый файл все записалось как надо?? Вот часть скрипта: @echo off for /f "tokens=* delims=" %%a in (c:\12.txt) do call :Change "%%a" :Change set Text=%~1 echo %~1|findstr "43" > nul if %errorlevel% == 0 ( (echo VarC=200)>> c:\newfile.txt ) else ( echo %Text% >> c:\newfile.txt ) |
|
Отправлено: 22:26, 14-04-2012 |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать CyberMuesli, автор указывает, что чтение происходит из текстового файла, и сколько там спецсимволов, и есть ли они - заранее не известно. О экранировании через '^' уже написано во втором сообщении, но это не выход - не редактировать же каждый раз исходный файл перед обработкой?
Цитата H1ghlander:
|
|
Отправлено: 03:10, 21-05-2012 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 207
|
Профиль | Отправить PM | Цитировать Цитата Anonymоus:
Я не проверял с чтением из файла. Зато я проверил на простом echo. При наличии символов <&> echo %A% работает неправильно, а echo !A! работает правильно. Быть может, предварительное чтение файлов что-то меняет... Вечером проверю |
|
------- Отправлено: 16:00, 21-05-2012 | #12 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать А при наличии символов «!»?
|
Отправлено: 16:14, 21-05-2012 | #13 |
Старожил Сообщения: 207
|
Профиль | Отправить PM | Цитировать Цитата Iska:
@echo off setlocal enabledelayedexpansion set A1=^<A^&B^^^!^> set A1 echo A1=!A1! echo !A1!>temp.tmp type temp.tmp del temp.tmp C:>x.bat A1=<A&B!> A1=<A&B!> <A&B!> Ошибка в синтаксисе команды. echo %A1% |
|
------- Последний раз редактировалось CyberMuesli, 22-05-2012 в 02:37. Причина: добавлены результаты работы скрипта Отправлено: 02:36, 22-05-2012 | #14 |
Старожил Сообщения: 207
|
Профиль | Отправить PM | Цитировать Да. Чтение файла всё меняет. Оно читает не по-честному, у меня пропадают восклицательные знаки
а без enabledelayedexpansion трудности с символами перенаправления. Что тут, сказать... BAT - это жесть. |
------- Последний раз редактировалось CyberMuesli, 22-05-2012 в 03:04. Отправлено: 02:58, 22-05-2012 | #15 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата CyberMuesli:
|
|
Отправлено: 03:31, 22-05-2012 | #16 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2010 - PowerPoint 2010 не распознаются спецсимволы | Kaimor | Microsoft Office (Word, Excel, Outlook и т.д.) | 0 | 03-11-2011 18:52 | |
VBS/WSH/JS - необходимо менять разрешения на раздел реестра содержащий спецсимволы | thebas | Скриптовые языки администрирования Windows | 2 | 30-03-2009 15:19 | |
[решено] При перенаправлении принтера терминального клиента не назначаются права доступа | vladimirniki | Microsoft Windows NT/2000/2003 | 2 | 02-12-2008 07:54 | |
Прочее - Linux и спецсимволы... | Bren74 | Общий по Linux | 3 | 21-10-2007 22:20 | |
[решено] Не работают спецсимволы. | Catalyst | Microsoft Windows 2000/XP | 11 | 13-02-2007 13:54 |
|