Войти

Показать полную графическую версию : [решено] Заменить фамилию в .txt файле Помогите!


doorsman
27-03-2012, 18:33
День добрый! С bat файлами никогда не работал, просмотрев ветку попробовал несколько советов с форума, но ничего не получилось. Помогите, пожалуйста, заменить фамилию и имя Иванов Иван, в файле Config.txt, на Петров Петр, так чтоб остальные параметры остались не измены. (Раз в неделю по запуску файла менять фамилии в файле с одной на другую)

CheckBox176_Checked=False
FilenameEdit6_Text=C:\export.txt
FilenameEdit6_Color=-2147483633
dir_elnak_Color=-2147483643
CheckBox177_Checked=False
CheckBox178_Checked=False
CheckBox179_Checked=True
Edit32_Text=Иванов Иван
Edit33_Text=666666666666666
Edit34_Text=77777777777777777
CheckBox180_Checked=False
time_CheckBox_Checked=False
time_Edit_Text=kassa

Спасибо!
P.S. И будьте добры поделится ссылкой на написание bat файлов. Премного благодарен!

ferget
27-03-2012, 18:47
поделится ссылкой на написание bat файлов »
http://forum.oszone.net/thread-130222.html

вот из этой темы скрипт
http://forum.oszone.net/thread-231201.html

doorsman
27-03-2012, 19:36
За ссылку спасибо буду читать, а данный вами скрипт создает другой файл 2.txt, а как то без этого можно?

ferget
27-03-2012, 19:40
можно например так


Set infile=1.txt
Set find=Иванов Иван
Set replace=Петров Петр

setlocal enabledelayedexpansion
for /F "tokens=* delims=," %%n in (!infile!) do (
set LINE=%%n
set LINE=!LINE:%find%=%replace%!
@echo !LINE!>>2.txt
)
endlocal
del 1.txt
ren 2.txt 1.txt

doorsman
27-03-2012, 19:55
А это нормально что после проделанных манипуляций файл увеличивается в размере? Просто batnik будет запускаться каждую неделю.

ferget
27-03-2012, 19:59
вроде не должен
во всяком случае, у меня размер файла не меняется

сильно увеличивается?

doorsman
27-03-2012, 20:07
Нет, 2, 3, 5 Кб после каждого запуска а файл 30Кб изначально.

kiripanda
27-03-2012, 21:16
в батниках нужно удалять завершающие пробелы

doorsman
28-03-2012, 00:14
Спасибо, удалил пробелы и все заработало как надо!




© OSzone.net 2001-2012