Board logo

标题: [文本处理] 【已解决】批处理怎么将文本文件行的顺序移动 [打印本页]

作者: 447219071    时间: 2015-9-30 23:34     标题: 【已解决】批处理怎么将文本文件行的顺序移动

本帖最后由 447219071 于 2015-10-1 18:51 编辑

首先,运行A.txt文本文件第一行的的命令如:start a.exe,
A.txt文件内容如下:
start a.exe
start b.exe
start c.exe
start d.exe
……
::最后一行有可能是空行

然后将A.txt文件内容变动,第一行移到最后一行(第一行是空行的话则应删除该空行或忽略该空行并将该空行的第二行上移至第一行),如下:
start b.exe
start c.exe
start d.exe
start a.exe
文件改动保存A.txt

功能是批处理每运行一次,其启动程序的顺序都会不一样

二楼仅将顺序换了,另行忽略或删除空行的功能没有实现,另外也没有运行第一行命令
作者: bailong360    时间: 2015-10-1 09:24

本帖最后由 bailong360 于 2015-10-1 18:00 编辑
  1. @echo off
  2. set /p l=<A.txt
  3. (for /f "skip=1 delims=" %%i in (A.txt) do echo %%i
  4. echo %l%)>$
  5. move /y $ A.txt
  6. %l%
复制代码

作者: 447219071    时间: 2015-10-1 16:07

回复 2# bailong360


    首先谢谢给的代码,有以下几个问题
1、仅将顺序换了,另行忽略或删除空行的功能没有实现
2、也没有运行第一行命令
3、处理后的文本不时加进“ECHO 处于打开(关闭)状态。”这样的一行
作者: bailong360    时间: 2015-10-1 18:00

回复 3# 447219071
已修改




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