Вы можете создать функцию, как показано ниже, и добавить ее в .psm1, а затем импортировать ее как модуль или в .ps1 и добавить ее в свой сеанс. Затем вы можете вызвать эту функцию, как показано ниже. Имейте в виду, что вы, вероятно, захотите добавить некоторую обработку ошибок.
function Set-CustomDistributionGroup
{
[CmdletBinding()]
param
(
[Parameter(
Position = 0,
Mandatory = $true
)]
[ValidateNotNullorEmpty()]
[Alias('DistributionGroupName')]
[String] $Name,
[Parameter(
Position = 1,
Mandatory = $true
)]
[ValidateNotNullorEmpty()]
[Alias('DistributionGroupDisplayName')]
[String] $DisplayName,
[Parameter(
Position = 2,
Mandatory = $true
)]
[ValidateNotNullorEmpty()]
[Alias('DistributionGroupAlias')]
[String] $Alias,
[Parameter(
Position = 3,
Mandatory = $true
)]
[ValidateNotNullorEmpty()]
[Alias('DistributionGroupPrimarySmtpAddress')]
[String] $PrimarySmtpAddress,
[Parameter(
Position = 4,
Mandatory = $true
)]
[ValidateNotNullorEmpty()]
[Alias('DistributionGroupManagedBy')]
[String] $ManagedBy
)
process
{
# General
New-DistributionGroup -Name $Name -DisplayName $DisplayName -Alias $Alias -PrimarySmtpAddress $PrimarySmtpAddress
# Ownership
Set-DistributionGroup -Identity $Name –ManagedBy $ManagedBy -BypassSecurityGroupManagerCheck
# Membership approval
Get-DistributionGroup | Set-DistributionGroup -MemberJoinRestriction:closed -MemberDepartRestriction:closed
# Delivery Management
Set-DistributionGroup -Identity $Name -RequireSenderAuthenticationEnabled $False
}
}
И затем назовите это так:
Set-CustomDistributionGroup -Name 'dis_its3' -DisplayName 'dis_its3' -Alias 'dis_its3' -PrimarySmtpAddress 'jackson.k12.ms.us' -ManagedBy 'Robinson Mykal'
Однако я был бы осторожен с этим вызовом, потому что вы не указываете, что получить. Многие командлеты powershell просто вернут все, и в результате вы обновите их все.
# Membership approval
Get-DistributionGroup | Set-DistributionGroup -MemberJoinRestriction:closed -MemberDepartRestriction:closed
person
jkdba
schedule
21.07.2016