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

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

tmpnikl 23-06-2023 10:47 3011034

Записать строки в текстовый файл
 
Здравствуйте, есть файл, как можно взять строку из этого файла, обрезать и записать в другой файл?

NickM 23-06-2023 13:14 3011039

Может так?
Код:

@echo off
setlocal enableextensions enabledelayedexpansion
for /f "tokens=*" %%a in ('type %~dp0file.txt') do (
set str=%%a
set str=!str:~0,10!
echo.!str!
)

Первые 10 символов каждой строки.

megaloman 23-06-2023 20:36 3011050

tmpnikl, Какую строку надо взять из файла и как обрезать? Как пример, взять первую строку из файла, вырезать после 10 позиции (то есть начиная с 11) 20 символов, записать полученное в другой файл
Код:

@Echo Off &Cls
        Set "FileIn=Z:\Box_In\source.txt"
        Set "FileOut=Z:\Box_Out\destination.txt"
        Set /A i1=10, n=20

        (Set /P Str=<"%FileIn%")
        >"%FileOut%" (Call Echo %%Str:~%i1%,%n%%%)
pause
Exit /B

Или то же самое для, например, 13 строки
Код:

@Echo Off &Cls
        Set "FileIn=Z:\Box_In\source.txt"
        Set "FileOut=Z:\Box_Out\destination.txt"
        Set /A k=13, i1=10, n=20

        Set /A kk=%k%-1
        >"%FileOut%" (For /F "usebackq delims=" %%s In (`2^>nul More +%kk% "%FileIn%"`) Do Set Str=%%s &GoTo :Continue)
        :Continue
        >"%FileOut%" (Call Echo %%Str:~%i1%,%n%%%)
pause
Exit /B


tmpnikl 26-06-2023 08:30 3011092

Спасибо


Время: 23:56.

Время: 23:56.
© OSzone.net 2001-