Board logo

标题: [文本处理] [已解决]批处理如何在文本文件中提取部份作为变量? [打印本页]

作者: thp2008    时间: 2021-3-17 22:33     标题: [已解决]批处理如何在文本文件中提取部份作为变量?

文件文件
list.txt
abc=1a9b3c4d5e6f7g8h2
abc=2a3b6c4d5e6f7g8h1
abc=3a1b3c4d5e6f7g8h6
abc=4a4b2c4d5e6f7g8h3
abc=5a9b1c4d5e6f7g8h7
abc=6a4b9c4d5e6f7g8h4
abc=7a9b8c4d5e6f7g8h5
如何将=号后的部分,提取出来作为变量A,不要abc=,最后输出显示变量就可以了。
=号后的字符串长度相等。

echo 变量
作者: qixiaobin0715    时间: 2021-3-17 23:06

  1. @echo off
  2. for /f "tokens=2 delims==" %%a in (list.txt) do echo %%a
  3. pause
复制代码

作者: thp2008    时间: 2021-3-17 23:10

回复 2# qixiaobin0715


    原来是这样处理的,非常感谢,学到了。好用。
作者: thp2008    时间: 2021-3-17 23:18

本帖最后由 thp2008 于 2021-3-18 00:03 编辑

回复 2# qixiaobin0715

不好意思,追问一下,如果不要这样一条批处理执行。
第一条只附于变量给%%a。
第二条执行echo %%a.
分两条命令单独执行,不要在一条命令里执行,
因为我想第一条只附于变量,下面我还需要运行多条命令,都需要使用这个变量。


再次感谢
作者: Batcher    时间: 2021-3-18 09:19

回复 4# thp2008
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=2 delims==" %%a in (list.txt) do (
  4.     set "str=%%a"
  5.     echo,!str!
  6. )
  7. pause
复制代码

作者: thp2008    时间: 2021-3-18 11:04

回复 5# Batcher

太感谢了,就是这个意思。测试没有问题。




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