博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Powershell 自定义输出列,两个例子
阅读量:6315 次
发布时间:2019-06-22

本文共 1465 字,大约阅读时间需要 4 分钟。

昨天和今天因为工作需要写了两个很简单的脚本,都需要自定义输出的列,需要用到 select @{name="名字”expression={表达式}}这种方式自定义。

第一个例子是boss让我输出一个简单的报表,需要列出悉尼除了系统账号以外的所有用户,包括他们的名字,手机,座机,所在的OU,公司等等信息。

这个基本的命令很简单,get-aduser就能实现,几个过滤的条件稍微思考了一下。

  1. 所有悉尼用户,可以用 -searchbase限制搜索的OU范围;

  2. 排除系统账号,因为所有的系统账号都位于同一个OU下面,那么搜索的时候过滤掉这个OU就行,例如

        get-aduser -filter * | where-object{$_.disginuishedname -notlike '*XXXX*‘}

  1. 各种需要查看的属性可以用-properties 列出

  2. 用户所在的OU本身不是一个属性,不过可以列出用户的caonicalname 属性,例如 /domain/ouname/username 的格式,然后通过split分隔符’/‘来处理

  3. 可以通过{name="xxx"';express={XXX}}的格式来自定义输出的表格header

  4. 最后导出到csv文件保存

get-aduser -Filter * -SearchBase "ou=sydney,dc=omnicom,dc=com,dc=au" -Properties name,mobile,title,ipphone, canonicalname,company,office |?{$_.distinguishedname -notlike '*Sydney Non-Replication*'}| select Name, Title, Mobile,@{name="Extension";expression={$_.ipphone}},@{name="OU";expression={$temp=($_.canonicalname -split '/');$temp[$temp.count-2]}}, company, office | sort name| Export-Csv c:\temp\users.csv

gridview查看一下结果

第二个例子是因为windows 2003服务器上周寿终正寝了,我需要导出AD里面windows2000和2003的记录,看看是否还在使用。实现方式和上面类似,filter过滤操作系统类型,然后select里面表达式自定义status,test-connection发送一个icmp包进行判断,根据结果返回值,同时输出dns cache的ip地址

Get-ADComputer -Filter{(operatingsystem -like "*2000*") -or (operatingsystem -like "*2003")} -Properties operatingsystem,ipv4address | sort operatingsystem| select name, operatingsystem, @{name="status";expression={if(Test-Connection -ComputerName $_.name -count 1 -quiet ){return "Connected"}else{return "Disconnected"}}}, ipv4address

转载地址:http://gmzaa.baihongyu.com/

你可能感兴趣的文章
Static与ViewStatic
查看>>
Extjs 动态生成表格
查看>>
Hadoop使用(二)
查看>>
IE、FF、Safari、OP不同浏览器兼容报告
查看>>
[转] smarty 学习指南(参数说明)
查看>>
关于IE6、7、8下实现盒阴影的几个注意点
查看>>
IE9工具中至关重要的--兼容性视图设置
查看>>
SQLite 引用问题
查看>>
How to install VirtualBox Guest Additions in CentOS 6(在CentOS中安装VirtualBox增强功能)
查看>>
关于鼠标移到gridview行上,背景变色的问题。
查看>>
windows phone 学习笔记 四
查看>>
十一个常见的PHP安全细则
查看>>
推荐30个新鲜出炉的精美 jQuery 效果
查看>>
exp/imp采用不同的表空间
查看>>
学习之路十:简单的系统架构图
查看>>
Farewell, Bangalore
查看>>
ESPlus 3.0 正式发布!
查看>>
C#加密算法汇总
查看>>
wp7 城市天气预报查询
查看>>
Wordpress最佳免费幻灯片插件推荐
查看>>