Powershell ps1 脚本在启动时显示在任务管理器中,但未显示 运行
Powershell ps1 script is showing in Task Manager in startup but not running
我有以下 Powershell 脚本文件 sumdigits.ps1,它每 10 秒将数字输出到日志文件中。手动执行时,脚本可以正常工作。执行策略设置为 RemoteSigned。
$logfile = "C:\Users/username/logger.log"
Function Log {
[CmdletBinding()]
Param(
[Parameter(Mandatory=$True)]
[string]
$Message
)
$Stamp = (Get-Date).toString("yyyy/MM/dd HH:mm:ss.fff")
$Line = "$Stamp $Message"
Add-Content $logfile -Value $Line
}
$i=0
while($true)
{
$i++
Log “We have counted up to $i”
Start-Sleep -s 10
}
我已经将它添加到启动文件夹,并在任务管理器中显示如下。所以它似乎在启动时被执行。
但是,当我看到日志文件时,没有任何内容写入其中。该脚本实际上不是 运行 还是出现了一些错误?在后一种情况下如何找到错误?
问题是 ps1 文件在记事本中打开而不是执行。为了解决这个问题,我创建了批处理文件来启动 powershell 脚本。
我有以下 Powershell 脚本文件 sumdigits.ps1,它每 10 秒将数字输出到日志文件中。手动执行时,脚本可以正常工作。执行策略设置为 RemoteSigned。
$logfile = "C:\Users/username/logger.log"
Function Log {
[CmdletBinding()]
Param(
[Parameter(Mandatory=$True)]
[string]
$Message
)
$Stamp = (Get-Date).toString("yyyy/MM/dd HH:mm:ss.fff")
$Line = "$Stamp $Message"
Add-Content $logfile -Value $Line
}
$i=0
while($true)
{
$i++
Log “We have counted up to $i”
Start-Sleep -s 10
}
我已经将它添加到启动文件夹,并在任务管理器中显示如下。所以它似乎在启动时被执行。
但是,当我看到日志文件时,没有任何内容写入其中。该脚本实际上不是 运行 还是出现了一些错误?在后一种情况下如何找到错误?
问题是 ps1 文件在记事本中打开而不是执行。为了解决这个问题,我创建了批处理文件来启动 powershell 脚本。