灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2458回复:0

把下一行的数字复制到前面一行的后面,并用空格分开的批处理

楼主#
更多 发布于:2013-06-08 14:21
把下一行的数字复制到前面一行的后面,并用空格分开的批处理

 
我想把一文本,其内容为这样的形式:
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尚未取到值。

喜欢0 评分0
游客

返回顶部