|
Не работает батник
| ☑ |
0
Про100Филя
26.04.19
✎
12:56
|
Добрый день.
Пытаюсь батником прочесть из текстового файла(List.txt), строки и добавить их к другой строке.
В файле List.txt
Hello
world
!
Пытаюсь батником прочитать так, чтобы в переменную _Text записалась вся строка "Hi! Hello world!", но вместо этого выходит "Hi!!"
@ECHO OFF
CLS
SET _CURRENTPATH=%~dp0
SET _TxtFile="%_CURRENTPATH%\List.txt"
SET _Text=Hi!
for /f "usebackq tokens=1*" %%a in (%_TxtFile%) do (
SET _Text=!_Text!%%a
)
echo %_Text%
pause
В чем ошибка?
|
|
1
dmrjan
26.04.19
✎
12:58
|
Кодировка ANSY?
|
|
2
Про100Филя
26.04.19
✎
13:01
|
(1) Везде Utf8, кириллицу выводить не нужно.
Если в цикл добавить вывод %%a то видно что файл читается, но присваевается строке только последнее значение
for /f "usebackq tokens=1*" %%a in (%_TxtFile%) do (
SET _Text=!_Text!%%a
echo %%a
)
|
|
3
arsik
гуру
26.04.19
✎
13:03
|
Кто то еще батниками пользуется? Для вас майкрософт специально повершелл создала, а вы все в старое макаетесь.
|
|
4
Йохохо
26.04.19
✎
13:11
|
set _text=%_text%%%a
?
|
|
5
Про100Филя
26.04.19
✎
13:16
|
(4) Вообще не присваивает в конце.
Частично решил добавлением в начало setlocal EnableDelayedExpansion, но пропали знаки
|
|
6
Про100Филя
26.04.19
✎
13:22
|
(3) Ну например я. Есть необходимость дописать скрип который лет 10 работает. Powerhell избыточен в этой задаче.
|
|
7
Про100Филя
26.04.19
✎
13:26
|
(5) + Пропадает только знак ! остальные символы на месте. Можно закрывать.
|
|