首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Batch:从文件中读取字符串,写入另一个文件

Batch:从文件中读取字符串,写入另一个文件
EN

Stack Overflow用户
提问于 2012-12-17 18:34:48
回答 1查看 5.1K关注 0票数 2

我正在尝试创建一个批处理文件,它将读取和替换另一个文件中指定的文本行/字符串。

示例:

我在\\company.local\netlogon\data.txt上有一个文件,其中包含以下内容:

代码语言:javascript
代码运行次数:0
运行
复制
JohnDoe=157 JoeSmith=104 JoeBloggs=514

我想读取等号后面的字符串,所以基本上作为登录脚本,我可以搜索包含%username%的行,然后将等号后面的数字读入一个变量,如%number%

因此,如果JohnDoe要登录,它将搜索他的名字并显示为157

然后,我希望能够在另一个文件中搜索字符串并写入特定的字符串,这样它就可以搜索Extension=并在后面写入157

类似于Extension=%number%,然后会以Extension=157的形式读入文件。

非常感谢您的帮助。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2012-12-28 00:09:54

不确定您如何格式化文件,但如果您将每个条目作为一个新行,这将会起作用。

代码语言:javascript
代码运行次数:0
运行
复制
set extlist=P:\ath\to\extensionlist.txt
set userdata=P:\ath\to\directory\%username%.txt

for /f "tokens=1,2 delims==" %%a in (%extlist%) do if /I %%a.==%username%. set ext=%%b

ren %userdata% %username%.txt.bak
for /f "tokens=1,2 delims==" %%a in (%userdata%.bak) do if /I %%a.==Extension. (echo Extension^=^%ext%>>%userdata%) else (echo %%a^=^%%b>>%userdata%)
del /Q %userdata%.bak
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13912445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档