Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] BAT - Удаление строк(-и) (http://forum.oszone.net/showthread.php?t=254570)

Ragnazar 21-02-2013 12:33 2095805

BAT - Удаление строк(-и)
 
команда echo >>file.txt добавляет строку в конец файла
Как добавить строку(-ки) в середину (не в конец) файла?
Возможно так-же удалить последнюю строку, добавить свою, вставить строку
формат файла .xml но ведь это не играет роли? так?

zion87 21-02-2013 14:37 2095893

Код:

@echo off
:: Имя файла в котором необходимо произвести запись
set file=test.txt

:: Имя временного файла
set temp=temp.txt

:: Номер строки (куда вставлять)
set numb=5
set /a sumb=%numb%-1

set n=0
for /f "delims=*" %%i in (' more +%n% %file% ') do call :1 "%%i"
:next
:: Что записываем
echo Делаем запись>>%temp%

:: Если надо заменить строку то (' more +%numb% %file% ') а если добавить то (' more +%sumb% %file% ')
for /f "delims=*" %%s in (' more +%numb% %file% ') do echo %%s >>%temp%
del %file% && ren %temp% %file%
exit

:1
set /a n+=1
set s=%1
if %n% NEQ %numb% echo %s:~1,-1% >>%temp%
if %n% == %numb% goto :next



Время: 18:12.

Время: 18:12.
© OSzone.net 2001-