Batch file 批量删除文本文件中的引号和第一行数据

Batch file 批量删除文本文件中的引号和第一行数据,batch-file,cmd,quote,Batch File,Cmd,Quote,我正在编写代码来完成以下几件事: 将日期添加到文本文件的末尾 从文本文件中删除“删除” 从文本文件(标题)中删除第一行 测试文件如下所示: Header "Data Line 1 Data Line 2" 到目前为止,我有一个适用于第一项的方法: ``` @echo off for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a set YYYY=%dt:~0,4% set MM=%

我正在编写代码来完成以下几件事:

  • 将日期添加到文本文件的末尾
  • 从文本文件中删除“删除”
  • 从文本文件(标题)中删除第一行
  • 测试文件如下所示:

    Header
    "Data Line 1
    Data Line 2"
    
    到目前为止,我有一个适用于第一项的方法:

    ```
    
    @echo off
    
    
    for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set dt=%%a
    set YYYY=%dt:~0,4%
    set MM=%dt:~4,2%
    set DD=%dt:~6,2%
    
    set stamp=%MM%%DD%%YYYY%
    move "C:\test\*.csv" "C:\test\test_%stamp%.txt"
    
    ```
    

    完全未经测试,可能会产生不需要的结果,具体取决于文件内容(您没有向我们显示).

    请给出您的一个文件的真实示例。
    cmd
    在格式或特殊字符方面可能会非常挑剔。为了澄清:您想将日期添加到文件名或文件内容中吗?添加日期已经完成。我只需将此操作与其他两项结合使用。我正在删除我的第一行数据,即这将是一个名为“Extract”的标题,接下来的几行包含客户端信息。txt文件是一个csv文件,在将add(“)转换为整个文档时。如果您可以控制转换部分,那么您真的应该解决该问题。稍后修复意味着逐行读取文件,处理每一行并写入新文件。根据具体内容的不同,这可能会很困难。引号在CSV文件中起着重要作用。删除它们可能会损坏数据。任何包含
    的值都必须被引用。
    文字值必须加倍。引用任何CSV值总是有效的,即使它不是必需的。使用SSRS我不能直接导出到文本。我必须下载/共享CSV文件,然后将其转换为文本文件。在该转换中,添加了报价。我不会转换回CSV,所以我不需要报价。谢谢你。它确实删除了第一行数据,但在其后的每一行文本中都添加了“line=*”。作为示例,我从文本文件中删除了这一行。“线路=5004123456789 191111200308Watkins Jacob Q1907151911181YYS 1906264.00 1500.00 500.00 123绿色公园大道Deltona AK3672954120787611N 4461233 RAMI 712128”额外的
    行=
    问题应该用我编辑的代码解决(在您发表评论之前5分钟)。请再试一次这就是问题所在。谢谢一切似乎都在按预期进行。
    @echo off
    setlocal enabledelayedexpansion
    for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set dt=%%a
    set YYYY=%dt:~0,4%
    set MM=%dt:~4,2%
    set DD=%dt:~6,2%
    set stamp=%MM%%DD%%YYYY%
    for %%a in ("c:\test\*.csv") do (
      (for /f "usebackq skip=1 delims=" %%b in ("%%a") do (
        set "line=%%b"
        echo !line:"=!
      ))>"C:\test\test_%%~na_%stamp%.txt"
    )