Компьютерный форум 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=234085)

Bruce Wayne 05-05-2012 11:44 1910916

Пустой абзац после определённой строки
 
Добрый день!

Имеется файл 1.txt, который содержит 25 строк. У меня такой вопрос: как сделать так, чтобы добавился пустой абзац после 21 строчки?

P. S. Есть скрипт для добавления пустого абзаца после каждой строчки:

Код:

for /f "tokens=*" %%i in (1.txt) do (echo. >>2.txt&echo %%i >>2.txt)
type 2.txt > 1.txt
del /a /f /q 2.txt

Но он добавляет ещё и пробел после каждой строчки, который добавлять не нужно. Подскажите, пожалуйста!

ferget 05-05-2012 12:28 1910927

Цитата:

Цитата Bruce Wayne
Но он добавляет ещё и пробел после каждой строчки, который добавлять не нужно. Подскажите, пожалуйста! »

Код:

for /f "tokens=*" %%i in (1.txt) do (echo.>>2.txt&echo %%i>>2.txt)
type 2.txt > 1.txt
del /a /f /q 2.txt


Bruce Wayne 05-05-2012 13:06 1910944

ferget, спасибо большое! Остался только вопрос с добавлением пустого абзаца после 21-ой строки.

megaloman 21-06-2019 23:59 2876384

Я не понимаю почему, но среди новых тем у меня почему-то высветилась вот эта. Подобный вопрос у меня всегда вызывает трудности, если в файле есть строки пробельные или пустые. Попробовал еще один вариант решения. Не кидайте в меня камнями за реанимацию трупа.
Код:

@Echo Off
        Set "FileIn=Z:\Box_In\intext.txt"
        Set /A N=21

        >"%FileIn%.tmp" (FOR /F "usebackq tokens=1* delims=:" %%i IN (`2^>nul FindStr /N /R ".*" "%FileIn%"`) DO (
                If "%%i"=="%N%" (Echo.%%j&Echo.) Else (Echo.%%j)
        ))
        >nul Move /Y "%FileIn%.tmp" "%FileIn%"
Exit /B


Iska 22-06-2019 16:13 2876427

Цитата:

Цитата megaloman
Я не понимаю почему, но среди новых тем у меня почему-то высветилась вот эта. »

Предполагаю следующее — потому что:
а) кто-то написал в ней новое сообщение;
б) кто-то из участников счёл это сообщение спамом и «нажал капу»;
в) в соответствии с новой политикой, сообщение было скрыто до его рассмотрения модераторами.

alpap 23-06-2019 00:27 2876474

Код:

@echo off
set "f=1.txt"
set s=21

<"%f%">$ (for /f "tokens=1* delims=[]" %%a in ('find /n /v ""') do @<nul set /p="[%%a]"|>nul find "[%s%]" && (
  <nul set /p="%%b"& echo:& echo:
 ) || (
  <nul set /p="%%b"& echo:
 )
)& >nul move $ "%f%"
pause& exit



Время: 14:13.

Время: 14:13.
© OSzone.net 2001-