脚本:
$folder = "$env:HOMEDRIVE\TestFolder"
New-Item -ItemType directory -Path $folder
$folder
请注意,当设置为“C:\...
”时,也会出现相同的组策略错误
执行策略不受限制,在 Windows 8.1 中手动运行脚本时运行良好(创建文件夹)。我创建了一个组策略(计算机配置 > Windows 设置 > 脚本 > 启动)将 TestFolder.ps1 添加到 \domain.com\SysVol\domain.com\Policies...\Machine\Scripts\Startup。安全过滤配置为应用于域计算机组。策略适用于计算机。
当策略尝试应用脚本时出现以下错误:
Group Policy event 1130
Startup script failed.
GPO Name : TestFolder Script
GPO File System Path : \\domain.com\SysVol\domain.com\Policies\...\Machine
Script Name: TestFolder.ps1
SupportInfo1 178254400
SupportInfo2 71
ErrorCode 267
ErrorDescription The directory name is invalid.
ScriptType 0
GPODisplayName TestFolder Script
GPOFileSystemPath \\domain.com\SysVol\domain.com\Policies\...\Machine
GPOScriptCommandString TestFolder.ps1
我忍不住注意到错误信息中的文件系统路径中省略了 \Scripts\Startup...有什么想法吗?
编辑:组策略适用于 Windows 7 VM。在我看来,Windows 8.1 存在问题。
答案1
我没有任何权威的参考资料,但是和$HOME
变量是$env:HOMEDRIVE
$env:HOMEPATH
用户-特定的环境变量。
当你在计算机而非用户的安全上下文中启动 PowerShell 主机时,它们不太可能被分配