gpt4 book ai didi

function - Powershell CommandNotFoundException

转载 作者:行者123 更新时间:2023-12-03 01:19:35 25 4
gpt4 key购买 nike

我有以下 powershell 脚本,它使用一个函数并将在 ISE 中正常运行:

Get-ComputerSessions -Computer "localhost"

# ===========================================================================
# Functions
# ===========================================================================


Function Get-ComputerSessions {
<#
.SYNOPSIS
Retrieves tall user sessions from local or remote server/s
.DESCRIPTION
Retrieves tall user sessions from local or remote server/s
.PARAMETER computer
Name of computer/s to run session query against.
.NOTES
Name: Get-ComputerSessions
Author: Boe Prox
DateCreated: 01Nov2010

.LINK

https://boeprox.wordpress.org

.EXAMPLE
Get-ComputerSessions -computer "server1"

Description
-----------
This command will query all current user sessions on 'server1'.

#>
[cmdletbinding(
DefaultParameterSetName = 'session',
ConfirmImpact = 'low'
)]
Param(
[Parameter(
Mandatory = $True,
Position = 0,
ValueFromPipeline = $True)]
[string[]]$computer
)
Begin {
$report = @()
}
Process {
ForEach($c in $computer) {
# Parse 'query session' and store in $sessions:
$sessions = query session /server:$c
1..($sessions.count -1) | % {
$temp = "" | Select Computer,SessionName, Username, Id, State, Type, Device
$temp.Computer = $c
$temp.SessionName = $sessions[$_].Substring(1,18).Trim()
$temp.Username = $sessions[$_].Substring(19,20).Trim()
$temp.Id = $sessions[$_].Substring(39,9).Trim()
$temp.State = $sessions[$_].Substring(48,8).Trim()
$temp.Type = $sessions[$_].Substring(56,12).Trim()
$temp.Device = $sessions[$_].Substring(68).Trim()
$report += $temp
}
}
}
End {
$report
}
}

但是,如果我尝试从 powershell 命令行运行它,我会收到以下错误:

PS C:\Downloads\Powershell> C:\Downloads\Powershell\test.ps1
The term 'Get-ComputerSessions' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path
is correct and try again.
At C:\Downloads\Powershell\test.ps1:25 char:21
+ Get-ComputerSessions <<<< -Computer "localhost"
+ CategoryInfo : ObjectNotFound: (Get-ComputerSessions:String) [], CommandNotFoundExc
eption
+ FullyQualifiedErrorId : CommandNotFoundException

PS C:\Downloads\Powershell>

谁能告诉我哪里出错了,我需要把这个函数放在一个单独的模块中吗?

我的背景是 VB 脚本,所以我很难掌握逻辑。

最佳答案

转移这个电话:

Get-ComputerSessions -Computer "localhost"

在函数 Get-ComputerSession 的定义下面再试一次。 PowerShell 在您定义函数之前遇到函数调用。

关于function - Powershell CommandNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18593325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com