Войти

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


Fantasy22
20-09-2010, 19:23
Возможно изменить с помощью батника в текстовом файле слово "открыть" на "закрыть" если да то как?

NiOl
21-09-2010, 15:30
@echo off
setlocal EnableExtensions
if not exist %1 exit
set tmp="%~dpn1.tmp"
set wrk="%~1"
ren %wrk% %~n1.tmp || exit

for /f "usebackq tokens=* delims=" %%L in (%tmp%) do call :ChStr "%%L"
del %tmp%
exit

:ChStr
set L=%~1
echo %L:открыть=закрыть%>>%wrk%
exit /b


* Параметр - имя текстового файла (в кодировке DOS/OEM)

Fantasy22
22-09-2010, 01:43
NiOl правильно я вас понял надо сохранить в отдельный батник и прописать путь к файлу то есть так

C:\1.bat 2.txt

Но батник удаляет оригинал и не создаёт новый или я делаю что - то не правильно

Fantasy22
22-09-2010, 04:34
Уже разобрался с проблемой

NiOl
22-09-2010, 17:31
Да, все правильно. Исходник переименовывается в *.tmp, а исправленный текст идет в файл под старым названием. Потом "временный" файл удаляется.




© OSzone.net 2001-2012