Powershell - 指定用户名的变量路径

时间:2015-10-26 21:30:52

标签: powershell path accounts

我试过搜索这个,但我认为我没有使用正确的单词。

我正在创建一个需要在许多环境中工作的脚本。其中一个规范是,我需要能够删除用户AppData中的某个目录。问题,是我不知道如何设置动态路径。

即。 C:\ Users \ User1 \ AppData \ Local \ X C:\ Users \ User2 \ AppData \ Local \ X

进行比较

如何在本地计算机上获取并指定一系列用户帐户,理想情况下不使用轮询AD?

2 个答案:

答案 0 :(得分:0)

使用Get-ChildItem查看本地资源路径的环境变量,如下所示:

Get-ChildItem -Path env:

这将显示所有环境变量及其值,而无需查询Active Directory,您想要的AppData \ Local称为LOCALAPPDATA

要在函数中使用环境变量,语法为$ENV:<Name>,因此要使用LOCALAPPDATA的环境变量,您将使用$ENV:LOCALAPPDATA

使用环境变量并开始编写脚本编码,如果您有其他问题,可以发布脚本,我们可以提供更具体的答案来帮助您:)

答案 1 :(得分:0)

要从AD获取用户名,必须在运行查询的系统上安装AD模块。

#Export to a csv file user names and use it as the source.
Note that this command will export all users from your AD.

    Get-ADuser -filter * | select name | Export-Csv c:\users.csv
    $users = Import-Csv c:\users.csv

    Foreach ($user in $users.name) {

    $path = "c:\users\$user\appdata\local\X"
    if ( $(Try { Test-Path $path.trim()} Catch { $false }) ) {

        Remove-Item $path -Force -Recurse
     }
    Else {

       write-host "Path not found"
     }

    }