Board logo

标题: [文本处理] 请教批处理把TXT文件第1-10行移到第21行 [打印本页]

作者: 开心畅享    时间: 2021-10-30 15:50     标题: 请教批处理把TXT文件第1-10行移到第21行

能不能帮这写个批处理,TXT文件需要将第1-10行移到第21行,也就是改变完成后现在的第11行变成第1行,之前的第1行变成21,同样需要修改的比较多,所以请高人帮忙写个批处理,谢谢!
作者: idwma    时间: 2021-10-30 17:57

  1. powershell "$a=type 111.txt;$a[10..19+0..9+20..$a.length]|Out-File -Encoding default 222.txt"
复制代码

作者: qixiaobin0715    时间: 2021-10-30 18:45

回复 1# 开心畅享
用纯批这样应当可以,代码未测试,请自测:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('dir /b /a-d *.txt') do (
  4.     set n=0
  5.     (for /f "skip=10 delims=" %%i in ('type "%%a"') do (
  6.         set /a n+=1
  7.         echo,%%i
  8.         if !n!==10 (
  9.             (for /l %%j in (1,1,10) do (
  10.                 set /p str=
  11.                 echo,!str!
  12.             ))<"%%a"
  13.         )
  14.     ))>"new_%%a"
  15. )
  16. pause
复制代码

作者: 开心畅享    时间: 2021-10-30 19:43

好的,谢谢高手!很佩服你们的技术
作者: 5i365    时间: 2021-10-31 13:53

回复 2# idwma


   大侠威武, PS相对好理解一下




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2