把下一行的数字复制到前面一行的后面,并用空格分开的批处理
3533 点击·0 回帖
![]() | ![]() | |
![]() | 把下一行的数字复制到前面一行的后面,并用空格分开的批处理
我想把一文本,其内容为这样的形式: 25 69 89 99 120 处理成以下的形式: 25 69 69 89 89 99 99 120 也就是说把下一行的数字复制到前面一行的后面,并用空格分开.不知dos能不能做到?还请高手指教!! 复制代码 代码如下: @echo off :: 把下一行的数字复制到前面一行的后面,并用空格分开 setlocal enabledelayedexpansion for /f %%i in (test.txt) do ( set /a count+=1 set first=!second! set second=%%i if !count! gtr 1 echo !first! !second! ) pause 总体思路是:提取每行的数字,赋予变量second,同时,用变量first接收变量second在上一次取到的值,这样,second取到的是当前行的数字,而first取到的是上一行的内容。至于用if来判断count的值是否是1,是因为当count为1的时候,first尚未取到值。 | |
![]() | ![]() |