当我调用Powershell脚本时,如何保持被调用脚本关闭其命令窗口.我收到一个错误,如果我能读错误,我肯定可以修复它.
我有一个Powershell脚本,它使用.NET类发送带附件的电子邮件.如果我通过从命令行执行脚本或从Windows调度程序调用脚本直接调用脚本,那么它可以正常工作.如果我从另一个脚本(IronPython,如果这很重要)中调用它,那么它就会失败.所有方案在我的开发机器上都能正常工作 (我真的必须得到"在我的机器上工作"的标识!)我已经以一种显示命令窗口的方式调用Powershell,我可以在它关闭之前看到闪烁的红色.
对不起:Powershell 1.0,IronPython 1.1
解决方案:powershell -noexit d:\ script\foo.ps1
-noexit开关工作正常.我刚刚将它添加到我从IronPython传递的参数中.正如我所怀疑的那样,我可以自己解决这个问题(执行政策,虽然我暂时设置为不受限制但没有效果,所以我想我需要深入了解).如果我遇到麻烦,我会问另一个问题.
感谢大家的帮助.我了解到我需要更加密切地研究powershell交换机,并且我可以看到很多将来会证明有用的东西.
如何重新启动脚本?我有3个开关,我希望它们恢复到脚本的开头.
Import-Module ActiveDirectory
Write-Host "--Please Login using a.account--"
#login
$credential = Get-Credential
#Main
Write-Host "--Remote Computer Rename v2.0--"
Write-Host "1. Query AD (Outputs to a text file)"
Write-Host "2. Quick computer rename"
Write-host "3. Quit"
$choice=Read-Host "Chose a number to continue"
#AD Query for computer
switch ($choice)
{
1 {
Write-Host "--Enter first five characters of computer name or full computer name i.e. USCLT--"
$cn=Read-Host 'Computer name'
$out="$cn*"
Get-ADComputer -Filter 'SamAccountName -like $out' >> c:\myscripts\dsquery.txt
Write-Host "Query complete. See dsquery.txt …Run Code Online (Sandbox Code Playgroud)