0

我有以下问题:包含此大致信息的常规列表:

Computer1
DateImplemented
Computer2
DateImplemented
Computer3
DateImplemented
<this goes on for a while>

我想要它做什么:

Computer1,DateImplemented
Computer2,DateImplemented
<etc>

我一直在尝试很多方法,但我得到的唯一输出是:

Computer1
DateImplemented.

这将是 50-50 个场景中的一种,其中解决方案非常简单或非常困难。

先感谢您!

4

2 回答 2

2

大概是这样的吧?

@echo off
setlocal enableextensions enabledelayedexpansion
set LINENUM=0
set PREVLINE=
for /f "delims=" %%a in ('type list.txt') do (
  set /a LINENUM+=1
  set CURRLINE=%%a
  set /a REMAINDER=!LINENUM! %% 2
  if !REMAINDER! EQU 0 echo !PREVLINE!,!CURRLINE!
  set PREVLINE=!CURRLINE!
)
endlocal

(当然,假设您的数据在 list.txt 中)

于 2013-07-10T21:13:06.907 回答
1
@echo off
setlocal EnableDelayedExpansion
set computer=
for /F "delims=" %%a in (list.txt) do (
   if not defined computer (
      set "computer=%%a"
   ) else (
      echo !computer!,%%a
      set computer=
   )
)

像往常一样,如果需要,可以修改此批处理文件以管理特殊批处理字符。

于 2013-07-11T04:46:04.110 回答