0

文本文件 (abc.txt) 中的 2 行示例:

    PMIP_TSD_2012120323.csv:03/12/2012,22:51:53,CAU TACS,TS,PPT4I_TS22,   AJAY,595959,P,Legal Exit,(6 0) AJAY,G1234567M,SERVICES P L,8401352W,  

    PMIP_TSD_2012111300.csv:12/11/2012,23:20:13,CAU TACS,TS,PPT4O_TS32,ARUMUGAM,620466,P,Legal Exit,(5 0) ARUMUGAM,G686W,SUPERSONIC SERVICES P L,1982W,  

我希望每一行都以日期而不是 csv 文件名开头。意味着删除 PMIP......csv: 对于每一行。我如何使用批处理文件来做到这一点?我有数百行,我不想手动完成。我的文件名是 abc.txt,它位于 D:\Int\ KGX

4

4 回答 4

1

这个批处理文件这样做:

@echo off
cd /D "D:\Int\KGX"
(for /F "tokens=1* delims=:" %%a in (abc.txt) do (
   echo %%b
)) > abc-NEW.txt
于 2013-01-08T04:50:02.987 回答
1

perl -npi -e 's/[^:]+://' /tmp/abc.txt产量:

03/12/2012,22:51:53,CAU TACS,TS,PPT4I_TS22,   AJAY,595959,P,Legal Exit,(6 0) AJAY,G1234567M,SERVICES P L,8401352W,  
12/11/2012,23:20:13,CAU TACS,TS,PPT4O_TS32,ARUMUGAM,620466,P,Legal Exit,(5 0) ARUMUGAM,G686W,SUPERSONIC SERVICES P L,1982W,  

从你的数据。希望有帮助...

于 2013-01-08T02:25:22.740 回答
1

我可以告诉你我对这个问题的看法

我们可以使用 C++ 或 Java 来解决这个问题

  1. 打开文件
  2. 在一个循环中,我们获取字符串变量中的行
  3. 使用 SubString (或某种类似的函数或实用程序)来指定第一个索引号(在我们的例子中是 23)
  4. 将子字符串存储在新文件中
  5. 完成循环

新文件是您想要的,希望对您有所帮助

于 2013-01-08T02:31:04.020 回答
0

这应该这样做

setlocal enabledelayedexpansion
for /f "tokens=1,* delims=:" %%a in (abc.txt) do (
echo !date!:%%b >>new.txt
)
del abc.txt /f /q
ren new.txt abc.txt
于 2013-01-08T09:17:39.340 回答