Показать полную графическую версию : [решено] Добавление текста
Вот мой оригинальный скрипт, в нем только добавлена строка SETLOCAL enabledelayedexpansion в нужном месте
Raf-9600
10-04-2012, 01:05
Oleg48, Да, вроде бы работает как надо. Ошибка возникает только если вначале добавляемого текста поставить точку с запятой ( ; ). Это реально как-то обойти?.. http://www.kolobok.us/smiles/standart/sorry.gif
Morpheus
10-04-2012, 01:13
Raf-9600, задайте какой-нибудь символ, с которого ваша строчка не может начинаться:
@Echo Off
set file=D:\123.txt
set text=text
For /F "eol=' tokens=*" %%i In (%file%) Do Set ti=%%i%text%
if "%ti%"=="" (
echo %text%>%file%
) else (
echo %ti%>%file%
)
pause
Точка с запятой просто по умолчанию обозначает начало комментария и такие строки пропускаются. Символ можно переназначить.
Raf-9600, set tekct=^;Этот_текст_надо_дописать срабатывает только один первый раз когда файла еще нет
Raf-9600
10-04-2012, 01:22
срабатывает только один первый раз когда файла еще нет »
Даже без символа ( ^ ) тоже в первый раз срабатывает, а вот на второй и третий немного глючит... а на остальные срабатывает %)
задайте какой-нибудь символ, с которого ваша строчка не может начинаться »
Вот это вроде бы подходит. Спасибо огромное! http://www.kolobok.us/smiles/light_skin/good.gif
Morpheus
10-04-2012, 01:31
Raf-9600, пожалуйста! :)
Morpheus, все работает, сказал спасибо, мне вроде и ненадо, а может когда пригодится.
eol=' »
Интересный ключик
А все таки, такой скрипт, но с добавлением текста в конец многострочного текстового файла, кто-нибудь сваяет? :)
Morpheus
10-04-2012, 02:08
Интересный ключик »
Самое интересное, какой бред написан в справке.
XP:
eol=c Specifies an end of line character (just one character).
...
for /F "eol=; tokens=2,3* delims=," %i in (myfile.txt) do @echo %i %j %k
This command parses each line in Myfile.txt, ignoring lines that begin with a semicolon and ...
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/for.mspx?mfr=true
7:
eol=c - specifies an end of line comment character
eol=c - знак начала комментария в конце строки
- вообще вынос мозга.
А все таки, такой скрипт, но с добавлением текста в конец многострочного текстового файла, кто-нибудь сваяет? »
А если оно никому не нужно, то стоит ли тратить силы?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC