首页 > 系统相关 >通过POWERSHELLPLUS示例脚本学PowerShell

通过POWERSHELLPLUS示例脚本学PowerShell

时间:2023-11-07 13:34:21浏览次数:30  
标签:group 示例 ## QA Add MemberDN POWERSHELLPLUS IADGroupMember PowerShell

在AD的管理脚本中,基本都是通过ADSI接口获取AD操作接口,其中涉及PowerShell的原生cmdlets的都大同小异。今天看看AD下的Function中的脚本,有新东西可以学习。

## =====================================================================
## Title       : Add-IADGroupMember
## Description : Add one or more objects to a group in Active Directory.
## Author      : Idera
## Date        : 8/11/2009
## Input       : Add-IADGroupMember [[-MemberDN] <String[]>]
##                     
## Output      : No Output
## Usage       :
##               1. Add the domain administrator account to the QA group 
##               Get-IADGroup QA | Add-IADGroupMember -MemberDN 'CN=Administrator,CN=Users,DC=domain,DC=com'  
## 
##               2. Add multiple accounts to the QA group 
##               $members = Get-IADUser -Name QAUser* | Foreach-Object { $_.distinguishedName } 
##               Get-IADGroup QA | Add-IADGroupMember -MemberDN $members 
##            
## Notes       :
## Tag         : group, member, activedirectory
## Change log  :
## =====================================================================


filter Add-IADGroupMember {
 param(
 [string[]]$MemberDN = $(Throw "MemberDN cannot be empty.") 
)
 

 if($_ -is [ADSI] -and $_.psbase.SchemaClassName -eq 'group')
 {
  $group = $_
  trap {
   Write-Error $_
   continue
  } 


  $MemberDN | Where-Object {$_} | ForEach-Object { $null = $group.member.add($_) } 

  $group.psbase.commitChanges()
 }
 else
 {
  Write-Warning "Wrong object type, only Group objects are allowed."
 }
}

第23行的filter是PowerShell的关键字,代表这是在PowerShell的管道中对所有对象进行的过滤操作。

还有一个符号是$_,代表的是管道中当前值的变量。

这个脚本中涉及的新知识点就这两部分。

标签:group,示例,##,QA,Add,MemberDN,POWERSHELLPLUS,IADGroupMember,PowerShell
From: https://blog.51cto.com/u_3353175/8230394

相关文章

  • Linux 中的 sar 命令示例
    一、概述 sar命令根据从系统活动收集的数据显示系统使用情况报告。这些报告由各个部分组成,每个部分都包含数据类型和收集数据的时间。sar命令的默认模式显示访问CPU的每一类资源(例如用户、系统、I/O调度等)以不同时间增量的CPU使用率。它还显示空闲CPU的百分比给定的时......
  • Oracle创建表语句(Create table)语法详解及示例
     创建表(Createtable)语法详解1. ORACLE常用的字段类型ORACLE常用的字段类型有VARCHAR2(size)可变长度的字符串,必须规定长度CHAR(size)固定长度的字符串,不规定长度默认值为1NUMBER(p,s)数字型p是位数总长度,s是小数的长度,可存负数最长38位.不够位时会四舍五入.......
  • c#对接海康双目客流相机SDK调用示例
    c#调用视频并显示在WinForm的PictureBox控制上面,实现一直播放视频的功能 首先需要使用visualstudionuget下载安装海康客流相机的SDK包然后根据以下代码和页面来设计一下实现逻辑就可以实现播放实时视频的需求了privateintm_lRealHandle=-1; publicMainForm()......
  • PowerShell显示“此系统上禁用了脚本执行”。
    内容来自DOChttps://q.houxu6.top/?s=PowerShell显示“此系统上禁用了脚本执行”。你正在尝试在cmd.exe中运行一个调用PowerShell脚本的cmd文件,但是遇到了这个错误:Management_Install.ps1无法加载,因为此系统禁止执行脚本。你已经运行了这个命令:Set-ExecutionPolicy-Exe......
  • Go 生成protobuf示例
    先安装好工具goinstallgoogle.golang.org/protobuf/cmd/[email protected]/grpc/cmd/protoc-gen-go-grpc@latest下载安装protocwgethttps://github.com/protocolbuffers/protobuf/releases/download/v25.0/protoc-25.0-linux-x86_64.zip......
  • java基础:再哈希法解决哈希冲突代码示例
    再哈希法(Rehashing)是解决哈希冲突的另一种方法。它与开放定址法不同,再哈希法使用多个哈希函数来确定冲突元素的位置,而不是在同一个哈希表中进行探测。下面是一个使用再哈希法解决哈希冲突的示例代码:publicclassRehashingHashTable{privateEntry[]table;privateint......
  • POWERSHELLPLUS调试脚本方法
    在之前的博文中,我曾经提到过,使用PowerShellPlus调试脚本的方法我没有找到,从而使用PowerGUI调试的。今天又研究了一下工具,发现还是可以调试的。也不知道是我那个版本的问题还是其它什么原因导致当时没有能够成功调试。这个工具的菜单和传统的方式还是有点不一样(这个应该是WIndows7风......
  • python实现手势识别的示例(入门)
    原文:https://pythonjishu.com/yoprvijnxxyihab/手势识别是计算机视觉领域的一个重要研究方向。在实际应用中,手势识别可以被用于人机交互、智能家居控制等领域。在本文中,我们将介绍如何使用Python实现手势识别的示例代码。环境搭建安装Python要使用Python进行手势识别的开发,首......
  • 使用LIME解释各种机器学习模型代码示例
    机器学习模型变得越来越复杂和准确,但它们的不透明性仍然是一个重大挑战。理解为什么一个模型会做出特定的预测,对于建立信任和确保它按照预期行事至关重要。在本文中,我们将介绍LIME,并使用它来解释各种常见的模型。LIMELIME(LocalInterpretableModel-agnosticExplanations)是......
  • 《深度学习的数学》(涌井良幸、涌井贞美著) 神经网络计算pytorch示例二
    涌井良幸、涌井贞美著的《深度学习的数学》这本书,浅显易懂。书中还用Excel示例(如下图)神经网络的计算,真是不错。但光有Excel示例还是有点欠缺的,如果有pytorch代码演示就更好了。百度了半天在网上没找到别人写的,只好自己撸一个(使用python+pytorch),供同样在学习神经网络的初学者参考......