代码之家  ›  专栏  ›  技术社区  ›  Janco

用于/f扩展的批处理文件

  •  2
  • Janco  · 技术社区  · 17 年前

    我有一份档案( directories.txt

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

    在我的脚本中使用运行脚本的真实用户名。然而,回音的输出与线和线完全相同 %USERNAME%

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

    回显显示“C:\Documents and Settings\%USERNAME%\My Documents”,而不是C:\Documents and Settings\ 扬科 \我的文件

    1 回复  |  直到 17 年前
        1
  •  2
  •   Helen    17 年前

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

    SETLOCAL ENABLEDELAYEDEXPANSION
    
    FOR /f "tokens=*" %%X IN (directories.txt) DO (
        SET DIR=%%X
        ECHO !DIR:%%USERNAME%%=%USERNAME%!
    )
    
    推荐文章