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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Тест-форум (http://forum.oszone.net/forumdisplay.php?f=26)
-   -   [решено] батник (http://forum.oszone.net/showthread.php?t=265832)

angel_lyucifer 09-08-2013 05:15 2198810

батник
 
Привет все, мне нужны два батника.
1.) Есть два файла timeout.txt и data.txt в файле timeout.txt всего одна строка а в файле data.txt четыре.
Как скопировать из файла timeout.txt одну строку и вставить ее в конец файла data.txt?

2.) Мне нужен второй батник чтобы он удалял пятую строку в файле data.txt а другие строки он не трогал.
Как это сделать, помогите пожалуйста?

Iska 09-08-2013 05:34 2198812

1.
Код:

copy /a data.txt+timeout.txt data.txt
2.
читать дальше »
Код:

@echo off
setlocal enableextensions enabledelayedexpansion

call :GetTemporaryName

>"%TemporaryName%" (
        for /f "usebackq tokens=1,2* delims=[]" %%i in (
                `type "data.txt" ^| find.exe /v /n ""`
        ) do if %%i neq 5 echo.%%j
)

copy /y "%TemporaryName%" "data.txt"
del /f /q "%TemporaryName%"

endlocal
exit /b 0

rem ==========================================================================
rem Функция GetTemporaryName()
rem
rem Серый форум / CMD/BAT: генерация пути для временного файла или папки
rem (http://forum.script-coding.com/viewtopic.php?id=6259)
rem ==========================================================================
:GetTemporaryName
        setlocal enableextensions enabledelayedexpansion

:NextName
        set sTempName=%temp%\temp%random%.tmp

        if exist "%sTempName%" goto :NextName

        set sProcName=%~0

        endlocal & set %sProcName:~4%=%sTempName%
        exit /b 0
rem ==========================================================================


angel_lyucifer 09-08-2013 20:29 2199237

Цитата:

Цитата Iska
copy /a data.txt+timeout.txt data.txt »

Копирование происходит не корректно, такой способ объединяет две строки четвёртую и пятую в одну и добавляя вместо нормальной строки, вот такую китайскую грамоту 㔣瑟浩彥汶ᩰ.
Почему такая китайская грамота, я не понимаю...

angel_lyucifer 10-08-2013 02:44 2199375

Цитата:

Цитата Iska
@echo off setlocal enableextensions enabledelayedexpansion call :GetTemporaryName >"%TemporaryName%" ( for /f "usebackq tokens=1,2* delims=[]" %%i in ( `type "data.txt" ^| find.exe /v /n ""` ) do if %%i neq 5 echo.%%j ) copy /y "%TemporaryName%" "data.txt" del /f /q "%TemporaryName%" endlocal exit /b 0 rem ========================================================================== rem Функция GetTemporaryName() rem rem Серый форум / CMD/BAT: генерация пути для временного файла или папки rem (http://forum.script-coding.com/viewtopic.php?id=6259) rem ========================================================================== :GetTemporaryName setlocal enableextensions enabledelayedexpansion :NextName set sTempName=%temp%\temp%random%.tmp if exist "%sTempName%" goto :NextName set sProcName=%~0 endlocal & set %sProcName:~4%=%sTempName% exit /b 0 rem ========================================================================== »

Спасибо, второй батник работает! -)


Время: 20:05.

Время: 20:05.
© OSzone.net 2001-