Csv 重新排序列并修改时间戳

Csv 重新排序列并修改时间戳,csv,timestamp,Csv,Timestamp,我在将数据重新整理成CSV文件、用逗号替换空格、限制行数以及将所有内容放在正确的位置方面取得了很大的进展。 我有一个包含大量行的页面,在40到60列之间,我的数据在前30列中可用,结果放在正确的位置,但是我无法获得正确格式的时间戳,在第15列中,我需要组合日期和时间(5h和第6列-in bolt),并将其表示为yyyymmdd hh:mm:ss,添加双点是我的双重麻烦 这就是我所拥有的: 我要分析的数据(一行,可能是几百行): 2014年1月160日0120200907 07045932 39

我在将数据重新整理成CSV文件、用逗号替换空格、限制行数以及将所有内容放在正确的位置方面取得了很大的进展。 我有一个包含大量行的页面,在40到60列之间,我的数据在前30列中可用,结果放在正确的位置,但是我无法获得正确格式的时间戳,在第15列中,我需要组合日期和时间(5h和第6列-in bolt),并将其表示为yyyymmdd hh:mm:ss,添加双点是我的双重麻烦

这就是我所拥有的:

我要分析的数据(一行,可能是几百行):

2014年1月160日0120200907 07045932 39 40 0a420115 0 0003373839@1.6.2.903353839@1.6.2.9 0 0 4 32241001@0.6.2.0 000 0 4 32241001@0.6.2.00 0 B10 X X X 0 Z030 28a4-a29-1-6-1b-90.6.2.2 Z1 GJGHGHGHG X01f F-1-15950 X X G3 20200907 07045970 00000000 45 0000000 775 000000 3975

我写的是:

@echo ON
: SETLOCAL EnableDelayedExpansion
for /F "tokens=1-8 delims=:./,_ " %%A IN ("%date%_%time%") DO (SET timestamp=%%D%%C%%B%%E%%F)
type  C:\DATA\SFTP\dump* > C:\DATA\SFTP\DATA.convert

@echo on > newfile.csv
for /f "tokens=1-30 delims=@ " %%a in (C:\DATA\SFTP\DATA.convert) do (
>> newfile.csv echo %%a,%%b,0,0,%%p,%%x,0,0,0,0,0,0,0,TAS,%%e %%f,0,0,%%g,0,EOL
)
move newfile.csv %timestamp%_ETAD.csv
:del newfile.csv
del C:\DATA\SFTP\*.convert
ren C:\DATA\SFTP\dump* dump*.processed
move *CDR.csv C:\DATA\SEND\
move C:\DATA\SFTP\*.processed C:\DATA\BCKUP\
endlocal
时间戳发生变化时的结果:

01月160日,T0ae,0,0337383932241001,0,0,0,0,0,0,TAS,20200907 070459,0,0,32,0,EOL