首页 > 解决方案 > CMD 用户名变量

问题描述

有一个文件夹“Folder1”

%SYSTEMDRIVE%/users/[username]/appdata/local/Folder/Folder1/

这是在用户的文件夹中。用户名未知。

@Echo Off
Set Folder1=%SYSTEMDRIVE%/users/[username]/appdata/local/Folder/Folder1/Folder2/
IF EXIST Lotus (
  move %SYSTEMDRIVE%/users/[username]/appdata/local/Folder/Folder1/ %SYSTEMDRIVE%/users/[username]/appdata//local/
) ELSE (
  goto end
)

如何设置username

标签: batch-file

解决方案


如果文件夹名称是已知/静态的,您可以使用以下简单的方法:

for /d %%A in (%SYSTEMDRIVE%\Users\*) do (
    if exist "%%A\appdata\local\Folder\Folder1\Lotus" (
        move "%%A\appdata\local\Folder\Folder1\" "%%A\appdata\local\"
    )
)

for /d只会循环遍历指定的文件夹而不是递归的。我不确定你是如何if设置你的东西的,但如果你的目标是获取用户配置文件,这是一种简单的方法。

参考:for /d


推荐阅读