Articles of PowerShell

与PowerShell匹配的模式1

所有, 我是新的Windowspipe理员types的东西,但我熟悉的Unix / Linux等我有一个简单的PowerShell 1脚本,应该只复制文件符合这个命名约定: Daily_Reviews[1099-9987].journal $ source中的模式导致错误:“无法findpath的一部分..”我需要知道如何在PowerShell环境中进行模式匹配 这是我的代码: $source = "C:\Users\Tom\Daily_Reviews\[\d\d\d\d\-\d\d\d\d\]\.journal" $destination ="C:\Users\Tom\Processed\" if(-not(Test-Path $destination)){mkdir $destination | out-null} Copy-Item $source $destination

PowerShell复制项目方法失败

我正在尝试使用PowerShell(v.1)仅复制匹配模式的文件。 文件命名约定是: Daily_Reviews[0001-0871].journal Daily_Reviews[1002-9887].journal […] 当我运行它,方法“复制项目”抱怨: 无法检索cmdlet的dynamic参数。 指定的通配符模式无效:Daily_Reviews [0001-0871] .journal + Copy-Item <<<< $ sourcefile $ destination 这是因为文件名中的“[”和“]”。 当我删除左侧和右侧的括号,它按预期工作。 但看起来像PowerShell 1没有-LiteralPath标志,所以还有另一种方法让Copy-Item在包含括号的文件名的PowerShell 1中工作? $source = "C:\Users\Tom\" $destination ="C:\Users\Tom\Processed\" if(-not(Test-Path $destination)){mkdir $destination | out-null} ForEach ($sourcefile In $(Get-ChildItem $source | Where-Object { $_.Name -match "Daily_Reviews\[\d\d\d\d-\d\d\d\d\].journal" })) { Copy-Item $sourcefile $destination }

重置VMware PowerCLI全局:DefaultVIServer和全局:DefaultVIServers系统variables?

任何人都可以在这里协助我重置全局:DefaultVIServer和全局:DefaultVIServers系统variables为$ null? 因为即使重新安装PowerCLi并将其升级到5.1U2之后,我也无法再使用PowerShell执行任何操作,以下是版本信息和configuration信息的输出: Scope ProxyPolicy DefaultVIServerMode InvalidCertificateAction DisplayDeprecationWarnings WebOperationTimeoutSeconds —– ———– ——————- ———————— ————————– ————————– Session UseSystemProxy Multiple Unset True 300 User UseSystemProxy Multiple AllUsers Single WARNING: Error initializing default drive: 'Unable to find a default server with Active Directory Web Services running.'. PowerCLI Version —————- VMware vSphere PowerCLI 5.1 Release 2 build 1012425 ————— […]

我可以在另一个林中的工作站上安装Exchange命令行pipe理程序吗?

在工作中,我们有两个森林,它们之间有双向传递的信任。 我需要访问驻留在与我的工作站不同的林中的Exchange环境的Exchangepipe理shell程序。 目前,我每次需要进行任何维护时都login到其中一台Exchange服务器。 是否可以在我的工作站上安装Exchangepipe理shell来pipe理其他林中的Exchange环境? 我知道标准安装说明不起作用。 我希望能有另一种方式。

删除AD用户帐户与PowerShell失败

我正试图删除一些不再需要的账户列表或离开我们雇用的人员。 我以为PowerShell会是最简单的,到目前为止有以下脚本来删除所有组成员身份,然后删除他们的帐户。 $users = Get-Content U:\UsersToDelete.txt foreach ($user in $users){ $groups = Get-ADPrincipalGroupMembership $user | Select-Object -Expand Name foreach ($group in $groups){ Remove-AdGroupMember -Identity $group -Member $user -Confirm:$false } Remove-ADUser -Identity $user -confirm:$false } 群组成员删除工作正常,一些帐户被删除,但不是全部。 我收到的错误是: Remove-ADUser : The directory service can perform the requested operation only on a leaf object 我猜测这可能与他们在Exchange中拥有一个邮箱有关,但在其他方面则是一片茫然。 是否有强制删除帐户从PowerShell,或者是我可以使用的命令的变种?

Exch2010 – 为没有activesyncdevice的设备删除ActiveSyncAllowedDeviceIDs

我有多个ActiveSyncAllowedDeviceIDs的用户,他们只有一个ActiveSyncDevice伙伴关系。 注意android-deviceid是一个真正的手机,testdevicepleaseignore是过去与设备伙伴关系被删除的设备。 [PS] C:\Windows\system32>Get-ActiveSyncDevice -Mailbox username UserDisplayName : org.local/Sites/IT Department/Users/Firstname Lastname DeviceAccessState : Allowed DeviceAccessStateReason : Individual Name : Android§android-deviceid DistinguishedName : CN=Android§android-deviceid,CN=ExchangeActiveSyncDevices,CN=Firstname Lastname,OU=Users,OU=IT Department,OU=Sites,DC=org,DC=local Identity : org.local/Sites/IT Department/Users/Firstname Lastname/ExchangeActiveSyncDevices/Android§android-deviceid ObjectCategory : org.local/Configuration/Schema/ms-Exch-Active-Sync-Device ObjectClass : {top, msExchActiveSyncDevice} [PS] C:\Windows\system32>Get-CASMailbox username | fl EmailAddresses : {SIP:[email protected], smtp:[email protected], SMTP:[email protected]} PrimarySmtpAddress : [email protected] SamAccountName : username DisplayName : […]

Exchange保留策略不能手动运行

我试图testing365天后删除已删除项目中的项目的Exchange 2010保留策略。 Exchange已完全修补。 当我运行Start-ManagedFolderAssistant -Identity “Administrator”它成功运行。 如果我运行Start-ManagedFolderAssistant对整个服务器运行这个,我被提示input服务器名称,然后得到下面的错误。 使用-Identity开关会发生同样的错误。 The operation couldn't be performed because object 'FQDN Of Exchange' couldn't be found on FQDN Of One of our DC's'. + CategoryInfo : NotSpecified: (0:Int32) [Start-ManagedFolderAssistant], ManagementObjectNotFoundExceptio n + FullyQualifiedErrorId : 9FFD81F9,Microsoft.Exchange.Management.SystemConfigurationTasks.StartElcAssistant 我已经检查过DC服务器中是否有条目。 DNS日志中没有错误。 我也强迫域名中的AD Replciation和DNS Replcation。 我也等了几个小时,所以域控制器也会自然复制。 为什么发生这种情况?

使用PowerShell更改用户的安全性DACL中的权限

我需要为属于名为“Employees”的安全组的域中的所有用户更改“包含来自此对象父级的可inheritance权限”。 我已经包含了一个屏幕截图,我需要改变。 我需要checkboxCHECKED。 我没有以前的PowerShell的经验,这必须是自动化的,否则将需要我LONG时间手动完成此操作。 谢谢!

PowerShell脚本来创build交换报告

我有一些脚本写在PowerShell上,我有一些问题。 当我运行这个脚本时,输出中有一些错误: 您无法在空值expression式上调用方法。 在C:\ scripts \ exchange_rep_work_cp.ps1:133 char:82 + $ mbx | add-member -membertype noteproperty -value $ stats.TotalItemSize.Value.ToMB <<<<()-name TotalSize + CategoryInfo:InvalidOperation:(ToMB:String)[],RuntimeException + FullyQualifiedErrorId:InvokeMethodOnNull 您无法在空值expression式上调用方法。 这个错误重复几次。 这是代码行(133): 130 $ tmp =“” 131 $邮箱| foreach { 132#姓名_公司有一个不同的域和域控制器 133($ Company -eq“Name_of_company”){ 134 $ stats = get-mailboxstatistics -DomainController zzzz.xxx.yyyyyy.local -id $ _ | where> 135 {$ .ObjectClass -eq“Mailbox”}} […]

适用于IIS 7.0的PowerShellpipe理单元IIsProviderSnapIn与Webpipe理

我正在尝试在运行带有Service Pack 2的服务器2008的服务器上安装IIS 7.0的Windows PowerShellpipe理单元 ,因此我可以使用Webpipe理快照 。 安装时我遇到了一个错误 此产品的另一个版本已经安装。 此版本的安装无法继续。 configuration或删除此产品的现有版本。 Get-PSSnapin和Get-Module-ListAvailable都不显示Web WebAdministration ,但是我列出了IIsProviderSnapIn 。 另外, 在Windows 2008 R1上使用PowerShell 2和模块作为IISpipe理答案提供的脚本返回False。 这是WebAdministration的旧版本吗? 这是作为“IIS 7.0的Microsoft Windows PowerShell提供程序”在“程序和function”下列出的吗? 如果是这样,我可以安全地卸载它,并从原始链接安装PowerShellpipe理单元? (或者,我可以使用IIsProviderSnapIn来获取所有当前正在运行的站点的列表,就像我在WebAdministration模块中的Get-Website ?)