Войти

Показать полную графическую версию : [решено] Круглые скобки в echo


TonyMil
10-01-2024, 10:36
Есть батничек
@echo off
set name=text1 (text2)
(For /F %%i In (in.txt) Do (
echo %%i %name%
))>out.txt
Содержимое in.txt не важно – набор коротких строчек без каких-то спецсимволов.
При запуске батник ругается: "Непредвиденное появление )."
Если из переменной name убрать круглые скобки, т.е. сделать так:
@echo off
set name=text1 text2
(For /F %%i In (in.txt) Do (
echo %%i %name%
))>out.txt
то всё начинает работать. Проблема в том, что там нужны именно круглые скобки.
Подскажите, что можно сделать?

sov44
10-01-2024, 11:14
TonyMil, заэкранируйте вторую скобку в переменной.
@echo off
set name=text1 (text2^^)
(For /F %%i In (in.txt) Do (
echo %%i %name%
))>out.txt

TonyMil
10-01-2024, 11:34
Огромное спасибо! Проблема решена.




© OSzone.net 2001-2012