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

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

Ответить
Настройки темы
CMD/BAT - [решено] Как экранировать символ?

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


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

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


Подскажите пожалуйста как экранировать символ "*"? Батник должен искать в текстовом файле строки которые начинаются словом "Аудит*", имено чтобы слово аудит заканчивалось на занак "*". Но отбираются все строки которые начинаются со слова Аудит как с * так и без него. Пробывал так "Аудит^*", но все равно отбираются все со словом Аудит.

Отправлено: 20:21, 26-09-2010

 

Старожил


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

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


Код: Выделить весь код
findstr/?
  ...
  \x       Служебный символ: символьное обозначение служебного символа x
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:12, 26-09-2010 | #2



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

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


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


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

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


kiripanda,
Спасибо!

Отправлено: 21:16, 26-09-2010 | #3


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


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

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


Подскажите пожалуйста. Ситуация таже, только теперь надо єкранировать " , т.е надо искать слова "учет" которые начинаются на знак " (кавычки) , пробЫвал "\"учет" и "^"учет" .

Отправлено: 21:01, 27-09-2010 | #4


Старожил


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

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


Вложения
Тип файла: txt file.txt
(219 байт, 66 просмотров)

Код: Выделить весь код
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.

D:\test>findstr /c:"\"учет" file.txt
+ т.е надо искать слова "учет" которые начинаются на знак " (кавычки) ,
+ пробЫвал "\"учет"
+ и "^"учет" .

D:\test>findstr /c:\"учет file.txt
+ т.е надо искать слова "учет" которые начинаются на знак " (кавычки) ,
+ пробЫвал "\"учет"
+ и "^"учет" .

D:\test>
М.б. не совпадает кодировка в файле и в запросе?
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:03, 27-09-2010 | #5


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


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

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


kiripanda, вот часть кода
Код: Выделить весь код
(for /f "tokens=1 delims=:" %%i in ('findstr /brnc:"Отдел"  /C:"Аудит\*"  /C:"\"учет" "%fi%"') do (
 set /a $j=%%i+1& for /f "tokens=1* delims=[]" %%a in (
'find /v /n ""^<"%fi%"^|findstr /bc:"[%%i]" /c:"[!$j!]"') do echo.999 %%b
)) >"%fo%"
Кодировка 866 и там и там.
При запуске вылетает
Код: Выделить весь код
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.

>"L:\1.bat"
Непредвиденное появление: &.
>
Или как сделать типа "?учет", т .е. все строки в которых со второго симола начинается слово учет?

Отправлено: 22:20, 27-09-2010 | #6


Старожил


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

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


Наверно, надо set /a $j=%%i+1^& for /f "tokens=1* delims=[]" %%a in (

? А нельзя так:
set /a $j=%%i+1
for /f "tokens=1* delims=[]" %%a in (

Цитата:
Или как сделать типа "?учет"
Код: Выделить весь код
findstr/?
  ...
Краткая сводка по синтаксису регулярных выражений:
  .         Любой символ.
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:29, 27-09-2010 | #7


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


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

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


Спасибо огромное. Все получиось!

Отправлено: 22:50, 27-09-2010 | #8



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как экранировать символ "=" в имени файла chobov Скриптовые языки администрирования Windows 3 11-09-2010 01:28
C/C++ - [решено] Как сравнить символ косая черта (\)? Ferum01 Программирование и базы данных 4 22-05-2010 11:58
Как наложить символ на клаву? newbigmir Microsoft Windows Vista 1 30-03-2007 21:21
Как сдвинуть курсов в поле ввода Оперы на один символ в лево? Vlad Drakula Вебмастеру 4 22-12-2004 12:25




 
Переход