Board logo

标题: [文本处理] [已解决]求教提取关键字的批处理语法错误在哪? [打印本页]

作者: ximenhao    时间: 2023-2-20 01:20     标题: [已解决]求教提取关键字的批处理语法错误在哪?

下面代码,是我组装的电脑是win7系统,每次执行都提醒我语法错误,不知道到底错在哪里?
另外,这个代码能在win10执行么?没电脑测试(后期也需要拿到win10系统用)。大神指点时候 求帮忙也看看,感谢了!研究到半夜 也没研究明白。。。。
  1. @echo off
  2. chcp 936
  3. type 保存.txt > newfile.txt
  4. cmd /c "type newfile.txt > 2.txt && del newfile.txt"
  5. copy /y /b 2.txt %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%提取链接备份.txt
  6. findstr "https://www.baidu.com" 2.txt > 3.txt
  7. @echo off
  8. (for /f "delims=" %%a in ('type "3.txt"') do if not defined %%a (echo,%%a &set %%a=def))>"4.txt"
  9. @echo off
  10. @echo off
  11. cd.>tmp.txt
  12. for /f "delims=" %%i in ('findstr /n .* 4.txt') do (
  13.   set "str=%%i"
  14.     setlocal enabledelayedexpansion
  15.     set "str=!str:*:=!"
  16.     >>tmp.txt echo !random!:!str!
  17.     endlocal
  18. )
  19. cd.>等待.txt
  20. for /f "delims=" %%i in ('sort tmp.txt') do (
  21.     set "str=%%i"
  22.     setlocal enabledelayedexpansion
  23.     set "str=!str:*:=!"
  24.     >>等待.txt echo.!str!
  25.     endlocal
  26. )
  27. del tmp.txt
  28. del 2.txt
  29. del 3.txtdel 4.txt
  30. del 保存.txt
  31. start 等待.txt
复制代码

作者: hlzj88    时间: 2023-2-20 07:32

本帖最后由 hlzj88 于 2023-2-20 07:42 编辑

我认为这段代码是没有如何实际意义的。故作神秘的废流程。
1 前10句,有意义就是发现baidu网址写入文本,如果没有产生一个空文本
2 对这个只有一行数据的文本进行N次处理,可能是要提取干净的百度地址,并在文本内展示。没有baidu即是一个空文本
通过简单使用,结果是如此。此代码无如何实际意义。


如果还有其他意义,会产生已经记录运行日期时间的文本。
但我win7运行并没有产生
作者: czjt1234    时间: 2023-2-20 08:07

目测

第五行加"
copy /y /b 2.txt "%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%提取链接备份.txt"

第29行加换行
del 3.txt
del 4.txt
作者: ximenhao    时间: 2023-2-20 09:19

回复 2# hlzj88


代码是我东拼西凑的。
有个文本叫:保存.txt   里面有包含  www.baidu.com 的行,也有其他乱七八糟的

我需要步骤 例如:
1:提取  保存.txt 里的 包含www.baidu.com 的行 到文件A.txt
2:去重A.txt 生成新文件 b.txt
3:备份b.TXT  (按"日期+提取链接备份"作为文件名,一天可能需要备份好几个)
4:删除其他临时文件

注:因为我找的提取关键字的代码  提取时候编码不对 他就不成功,所以先改编码。

当然所有代码东拼西凑 先后顺序有点混乱, 他认识我 我不认识他。没有所谓的故作神秘 懂?
作者: ximenhao    时间: 2023-2-20 09:24

回复 3# czjt1234


   感谢哥  现在没错误提醒了。我10个小时的东拼西凑研究 不如你一句话 哈哈
作者: hlzj88    时间: 2023-2-20 21:58

回复 4# ximenhao

人直就是嘴上没把关的。。见谅
主要是 前面用了5个txt,转了n圈提取了一句话,后面11行到26行用了几乎一模一样的代码,我开始是以为这是故意这样做,摆了迷魂阵。

学无止境,加油
作者: Batcher    时间: 2023-2-21 09:01

回复 1# ximenhao


下次遇到问题,可以试试参考Q-01观察一下哪行代码在报错以及详细的报错信息:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
作者: Batcher    时间: 2023-2-21 09:09

回复 4# ximenhao


提取时候编码不对 他就不成功,所以先改编码。

你的txt文件和bat文件的编码分别是什么?
作者: ximenhao    时间: 2023-3-8 22:56

回复 8# Batcher


    感谢@




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2