试图从每一行中只解析出一件事

问题描述 投票:0回答:1

当我尝试解析字符串时,我得到了我不想要的数据。 试图在每一行的第一个空格之后只获取第一个项目,即在第 1 行中只需要 LP23044,这样我就可以复制文件。

注意:在每行和句点的第一个数字之后有一个空格。

  1. LP23044 2023 年 3 月 24 日上午 12:00:00
  2. BUG_HCNA_LIVE 3/24/2023 12:00:00 AM
  3. BUG_HCNA1 2023 年 3 月 24 日上午 12:00:00
  4. PR35878 2023 年 3 月 24 日上午 12:28:45
  5. PR26662 2023 年 3 月 24 日上午 12:29:15
  6. UPNEXTHC 2023 年 3 月 24 日上午 12:29:52
  7. UPNEXT_DSK.oaseq 3/24/2023 12:29:52 AM
  8. PR3501 2023 年 3 月 24 日上午 12:59:36
  9. PR22204CF 2023 年 3 月 24 日凌晨 1:28:00
  10. PRIDGNT2301 2023 年 3 月 24 日凌晨 1:28:45
  11. BHD2305012 2023 年 3 月 24 日凌晨 1:30:40
  12. PR7760 2023 年 3 月 24 日凌晨 1:44:14
  13. PR8858 2023 年 3 月 24 日凌晨 1:59:26
  14. HC0001858 2023 年 3 月 24 日凌晨 2:00:00

FOR /f "tokens=2 delims=" %%G in (missingfiles.txt) DO robocopy -j M:\ F:\Media\ %%G.*

预计在前 2 个令牌之后我只得到文件名。

for-loop batch-file
1个回答
0
投票

"tokens=2 delims="
的意思是“把整行当成一个单项,返回第二项”所以没有什么可以返回的。如果您只是删除
delims=
,您的循环将按预期工作。

for /f "tokens=2" %%G in (missingfiles.txt) do robocopy -j M:\ F:\Media %%G.*
© www.soinside.com 2019 - 2024. All rights reserved.