摘要: 上周客户提出了一个要求,将Computers里面的计算机账号移动到相应的OU下,由于数量比较大,采用脚本。在客户环境中计算机账号名和用户名一致。这样问题处理就比较简单了,先获取此OU下面的用户名,然后和Computers计算机账号名一一匹配,如果一致,则移动此计算机账号到对应OU下。自定义powershell命令SearchMove-ADComputer使用方法:将与“ou=test,dc=contoso,dc=com”下用户名一致的计算机账号移动到“ou=computers,ou=test,dc=contoso,dc=com” 下SearchMove-ADComputer –SearchBa 阅读全文
posted @ 2013-12-24 08:43 motools 阅读(749) 评论(0) 推荐(0) 编辑
摘要: 这个问题似乎看起来是问系统支持最大硬盘参数?其实不然,这和文件系统有着很大关系.磁盘在系统应用之前,要先初始化,然后创建卷,再进行格式化后完成在系统的挂载。完成这些操作之后,磁盘空间可以被系统使用。首先初始化的时候,则是涉及磁盘分区表采用哪种方式的管理,是MBR还是GPT。如果是MBR磁盘,每个磁盘最多有四个主分区;每个分区大小为2TB;如果是GPT磁盘,每个磁盘可达128个分区;每个分区可到18EB;所以GPT更适合大磁盘的管理。当我们使用GPT磁盘时,分配了一个18EB的分区,是不是能正常格式化为相应文件系统(在微软系统中典型的就是NTFS)然后进行挂载呢?NTFS文件系统所支持的卷可以达 阅读全文
posted @ 2013-11-05 10:11 motools 阅读(9848) 评论(0) 推荐(0) 编辑
摘要: function Get-OSInfo ([string]$Server) { $object = Get-WmiObject win32_computersystem -ComputerName $Server $status = $object.Status $domain = $object.Domain $osversion = (Get-WmiObject Win32_OperatingSystem -ComputerName $Server).version $ip = (get-wmiobject win32_networkadapte... 阅读全文
posted @ 2013-11-03 21:22 motools 阅读(783) 评论(0) 推荐(0) 编辑
摘要: function Set-RemoteDesktop { while($InNumber -ne 6) { Write-Host " ##########################################################" -ForegroundColor Green Write-Host " # 1、自定义远程桌面端口; #" Write-Host " # 2、开启远程桌面; #" Write-Host " # 3、开启防火墙远程桌面出入端口; #" Write-Host " 阅读全文
posted @ 2013-10-24 22:29 motools 阅读(2786) 评论(0) 推荐(0) 编辑
摘要: 1: 7: function Get-FilewithExtension 8: ([array] $Path, #指定要查询的路径 9: [array] $Extension, #指定文件类型 10: [string]$CsvFilePath) #指定导出结果文件 11: { 12: $result = @() 13: $file = Get-ChildItem -Path $Path -Recurse |Where-Object... 阅读全文
posted @ 2013-09-29 15:14 motools 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 学习Powershell的时候,基本的语法也了解了一些,但是就是不知道要写些什么?作为一个过来者,和大家一起分享下常见的几个管理任务脚本。1.更改本地Administrator账号密码[ADSI]$Admin = "WinNT://计算机名/用户名" $Admin.SetPassword(P@ssw0rd) 2.重启或关闭计算机为了能实现对多台计算机操作,将所有要操作计算机名保存在文本文件中。Get-Content c:\works\server.txt |Where-Object {Test-Connection $_ -Quiet -Count 2} | foreach 阅读全文
posted @ 2013-09-12 22:30 motools 阅读(665) 评论(0) 推荐(0) 编辑
摘要: 当显示多条结果时,存储在变量中非常智能,变量类型会自动转换为一个数组。在下面的例子中,使用GetType()可以看到$a变量已经不是我们常见的string或int类型,而是Object类型,使用-is操作符来判断是否是个数组,返回True则是数组,返回False则不是。如果要统计数组的行数,用我们前面学到的一个方法count即可。例如要看一下$a变量值的行数:数组都有一个下标索引,用于访问其中的值,从0开始。例如我要访问$a第六行结果,在Powershell Console中输入$a[5]打印出结果。创建数组变量数组变量是一种特殊而且十分有用的变量,是有N个普通的变量组成。一个数组包含多个值得 阅读全文
posted @ 2013-09-09 22:57 motools 阅读(3191) 评论(0) 推荐(1) 编辑
摘要: 有一张Excel表格收集了计算机名和IP地址,另外一张表有计算机名,需要找出这张表中计算机名对应的IP地址。#定义函数Get-LikeContentInfofunction Get-LikeContentInfo { param( [ValidateNotNullOrEmpty()] [string]$CSVPath, #参数非空,输入CSV文件路径 [ValidateNotNullOrEmpty()] [string]$InputPath, #参数非空,输入TXT文件路径 [ValidateNotNullOrEmpty()] [string]$OutCSVPa... 阅读全文
posted @ 2013-09-07 16:06 motools 阅读(928) 评论(0) 推荐(0) 编辑
摘要: 在指令执行过程中,会有一些数据产生,这些数据被用于以后的语句,需要一个存储单元暂时的存放这些数据,这个时候定义一个变量来存储数据。例如$string = “Hello Powershell!”Powershell中无需declare声明,定义变量前缀有”$”符号常见变量类型数值型(int)字符型(char)布尔型(bool)定义变量$a = 100 #变量$a值赋予100Set-Variable -Name a -Value 100 为变量$a赋值100 或者New-Varibale –Name a –Value 100 创建变量$a并赋值100 (有关New-Variable还有更多的参数, 阅读全文
posted @ 2013-09-03 22:38 motools 阅读(1239) 评论(0) 推荐(0) 编辑
摘要: Powershell提供两种接口:交互式和自动化脚本先学下如何与Powershell Console和平共处,通过Powershell Console和机器学会对话。通过以上一个简单测试,知道Powershell原来是可以当计算器来使用哦!那么有人要问了Powershell里面能不能运行cmd命令呢?这是完全可以的,我们把非Powershell指令称为外部指令,Powershell提供了对外部CMD指令完全兼容。空格在这个事例中,如果出现空格可用””或’’,保证完整性。命名参数(Named Parameters)在指令中会有一些参数值要输入,在输入之前要先指定命名参数,例如:以下指令表式获取服 阅读全文
posted @ 2013-08-30 08:48 motools 阅读(1233) 评论(0) 推荐(0) 编辑