找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 15305|回复: 2

[文本处理] 批处理设置变量中有特殊字符 报错| was unexpected at this time

[复制链接]
发表于 2020-1-6 09:29:38 | 显示全部楼层 |阅读模式
求助各位大神,下面我写的bat  报错| was unexpected at this time(咋处理特殊字符|   ?)
现在我想判断a文件内容第一行是否和b文件内容第一行一直,是就输出log true,否是就输出log false
  1. @echo off
  2. SET localfile=E:\mce_lab\mce_lab_Source_File_In\a.csv
  3. SET validate=E:\mce_lab\mce_lab_Source_File_In\b.txt

  4. for /f %%i in ('powershell Get-Content %localfile% -TotalCount 1') do (SET lastfieldname=%%i)
  5.   
  6. for /f %%i in ('powershell Get-Content %validate% -TotalCount 1') do (SET va=%%i)



  7. if "%headfilename%" =="%SB%" (
  8.     echo true  >E:\mce_lab\mce_lab_etl\20202020log.txt
  9.        
  10. )   else (
  11.     echo false >E:\mce_lab\mce_lab_etl\20202020log.txt
  12.        
  13. )
复制代码
下面是a.csv内容
aa|bb|cc|dd|
b.txt内容
aa|bb|cc|dd|
发表于 2020-1-6 10:09:55 | 显示全部楼层
回复 1# twl666666
  1. @echo off
  2. set localfile="E:\mce_lab\mce_lab_Source_File_In\a.csv"
  3. set validate="E:\mce_lab\mce_lab_Source_File_In\b.txt"
  4. set /p lastfieldname=<%localfile%
  5. set /p va=<%validate%
  6. if "%lastfieldname%" equ "%va%" (
  7.     >"E:\mce_lab\mce_lab_etl\20202020log.txt" echo true
  8. ) else (
  9.     >"E:\mce_lab\mce_lab_etl\20202020log.txt" echo false
  10. )
复制代码
 楼主| 发表于 2020-1-6 10:52:05 | 显示全部楼层
回复 2# Batcher


  谢谢大佬~!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 13:06 , Processed in 0.027086 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表