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

[文本处理] [已解决] 批处理如何读取外部资料 %变量%

[复制链接]
发表于 2015-6-16 16:15:53 | 显示全部楼层 |阅读模式
本帖最后由 Pia 于 2015-6-17 08:54 编辑

今天碰到一个问题, 从特定档案中提取特定变数
但是%USERPROFILE% 不会自动展开, 该如何修正呢?

得到的输出为
ADIR=GTAV_SAVE
BDIR=%USERPROFILE%\Documents\Rockstar Games\
请按任意键继续 . . .


希望得到这个输出, 要如何修改呢?
ADIR=GTAV_SAVE
BDIR=C:\Users\XXXX\Documents\Rockstar Games\



================ 读取外部文件.cmd =================
  1. @echo off
  2. if exist Setting.ini set Setting_Files=Setting.ini

  3. findstr /b "ADIR" "%~dp0%Setting_Files%" >%TEMP%\temp.txt & for /f "delims== tokens=2*" %%i in (%TEMP%\temp.txt) do (set ADIR=%%i)
  4. findstr /b "BDIR" "%~dp0%Setting_Files%" >%TEMP%\temp.txt & for /f "delims== tokens=2*" %%i in (%TEMP%\temp.txt) do (set BDIR=%%i)

  5. echo ADIR=%ADIR%
  6. echo BDIR=%BDIR%
  7. PAUSE
复制代码
================ 读取外部文件.cmd END=================


================Setting.ini==================

ADIR=GTAV_SAVE
BDIR=%USERPROFILE%\Documents\Rockstar Games\

================Setting.ini END==================

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-6-16 19:13:04 | 显示全部楼层
  1. @echo off
  2. set "Setting_Files=Setting.ini"

  3. for /f "delims=" %%i in ('findstr /b "ADIR BDIR" "%Setting_Files%"') do call set "%%i"

  4. echo ADIR=%ADIR%
  5. echo BDIR=%BDIR%
  6. PAUSE
复制代码

评分

参与人数 1技术 +1 收起 理由
Pia + 1 谢谢你的帮忙~~:loveliness:

查看全部评分

 楼主| 发表于 2015-6-17 08:53:11 | 显示全部楼层
太好了!!!  谢谢你的帮忙~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 00:04 , Processed in 0.027979 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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