Syk*_*360 3 powershell startup
这个问题让我挠头。对于 Powershell 来说也很陌生。
\n\n目标:机器启动时,Powershell 脚本启动并询问计算机名称,然后将其添加到域中,进行清理并重新启动机器。
\n\n这是我的脚本:
\n\n$getName = Read-Host -Prompt "Enter the new name for this computer"\n$user = "mdt_join"\n$password = Read-Host -Prompt "Enter password for $user" -AsSecureString\n$username = "bc\\mdt_join"\n$credential = New-Object System.Management.Automation.PSCredential($username,$password)\n\nAdd-Computer -NewName $getName -DomainName DOMAIN -OUPath "OU=Managed Stations,DC=DC,DC=DC,DC=DC" -Credential $credential -restart\n\nRename-Computer \xe2\x80\x93NewName $getName\n\nRemove-Item C:\\Users\\ladmin\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\startup.cmd\n\nRemove-Item $MyINvocation.InvocationName\nRun Code Online (Sandbox Code Playgroud)\n\n如果我手动运行该脚本,但是当我使用此startup.cmd时,该脚本可以工作
\n\nREM Attempt to set the execution policy by using PowerShell version 2.0 syntax.\nPowerShell -Version 2.0 -ExecutionPolicy Unrestricted .\\script1.ps1 >> "%TEMP%\\StartupLog.txt" 2>&1\n\nIF %ERRORLEVEL% EQU -393216 (\n REM PowerShell version 2.0 isn\'t available. Set the execution policy by using the PowerShell version 1.0 calling method.\n\n PowerShell -Command "Set-ExecutionPolicy Unrestricted" >> "%TEMP%\\StartupLog.txt" 2>&1\n PowerShell .\\startup.ps1 >> "%TEMP%\\StartupLog.txt" 2>&1\n)\n\nREM If an error occurred, return the errorlevel.\nEXIT /B %errorlevel%\nRun Code Online (Sandbox Code Playgroud)\n\n我没有得到相同的结果。它只是恢复到 PS C:> 位。我需要startup.cmd来不受限制地运行它。
\n\n有人可以看一下这个并看看我哪里出了问题吗?慢慢来——我昨天才开始涉足 powershell。
\n
.ps1执行下面的 PowerShell 命令,在用户登录时通过任务计划程序运行 PowerShell 脚本。
Register-ScheduledTask -TaskName "TASKNAME" -Trigger (New-ScheduledTaskTrigger -AtLogon) -Action (New-ScheduledTaskAction -Execute "${Env:WinDir}\System32\WindowsPowerShell\v1.0\powershell.exe" -Argument "-WindowStyle Hidden -Command `"& 'C:\PATH\TO\FILE.ps1'`"") -RunLevel Highest -Force;
Run Code Online (Sandbox Code Playgroud)
-AtLogOn- 表示触发器在用户登录时启动任务。
-AtStartup- 表示触发器在系统启动时启动任务。
-WindowStyle Hidden- 启动时不显示 PowerShell 窗口。如果不需要,请删除。
-RunLevel Highest- 以管理员身份运行 PowerShell。如果不需要,请删除。
聚苯乙烯
如有必要,请执行下面的 PowerShell 命令以启用 PowerShell 脚本执行。
Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy Unrestricted -Force;
Run Code Online (Sandbox Code Playgroud)
Bypass- 没有任何内容被阻止,也没有警告或提示。
Unrestricted- 加载所有配置文件并运行所有脚本。如果您运行从 Internet 下载的未签名脚本,系统会在运行前提示您授予权限。
| 归档时间: |
|
| 查看次数: |
8059 次 |
| 最近记录: |