我有一个abc.txt文件,其中包含以下内容
3922 [main] INFO com.informatica.saas.utilities.task.ICSTask - Submitted run of the task: taskId=000YKG0N00000000002N, taskRunId=\
我想提取单词000YKG0N00000000002N
并将其存储在变量中以在脚本中进一步使用。
我尝试使用以下代码:
for /F "tokens=*" %%A in (abc.txt) & for %%A in ("taskId=" "%") do echo Value: %%~A
我得到的错误:
%% A这一次出乎意料
请帮助我解决问题
答案 0 :(得分:0)
您可以尝试以下代码:
@echo off
for /F "tokens=2 delims==" %%A in ('Type abc.txt') do (
for /F "tokens=1 delims=," %%B in ('echo %%A') do (
Set "IDTask=%%B"
)
)
echo TaskID = [%IDTask%]
pause
编辑: 另一个受Gerhard Barnard启发的代码:
@echo off
SetLocal EnableDelayedExpansion
@for /f "tokens=2 delims=:," %%i in ('type abc.txt') do (
@set%%i
REM To remove Space into Variable
Set "taskID=!taskID: =!"
echo taskID = [!taskID!]
)
pause
答案 1 :(得分:0)
也许很简单:
@for /f "tokens=2 delims=:," %%i in ('type abc.txt') do @set%%i
echo %taskID%
或者如果令牌根据您的新问题转移:
@for /f "tokens=3 delims=:," %%i in ('type abc.txt') do @set%%i
echo %taskID%