我有一个文件(directories.txt)用的目录名,各在一行和我想扩大行

C:\Documents and Settings\%USERNAME%\My Documents

在我的脚本运行脚本的真实用户名。然而,回声出来完全相同的线和%USERNAME%不会展开。

FOR /f "tokens=*" %%X IN (directories.txt) DO (
    ECHO %%X
)

在回波显示 “C:\ Documents和Settings \%USERNAME%\ My Documents” 文件,而不是C:\ Documents和Settings \的 JANCO \我的文档

任何想法?

有帮助吗?

解决方案

我已经成功地做到这一点使用变量替换:

SETLOCAL ENABLEDELAYEDEXPANSION

FOR /f "tokens=*" %%X IN (directories.txt) DO (
    SET DIR=%%X
    ECHO !DIR:%%USERNAME%%=%USERNAME%!
)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top