遵循networking上的例子,为第一个DSC脚本build立一个工作示例并不困难。 但是,我需要find一种方法来列出脚本所做的更改,而不是实际上“做到这一点”。 我遇到的挑战是我要testing的脚本包含一些发布pipe理特定的variables,这些variables在发布过程中被填充。 喜欢这个: # Copy website bits to configured deployment path File CopyDeploymentBits { Ensure = "Present" Type = "Directory" Recurse = $true SourcePath = $applicationPath DestinationPath = $($Node.DeploymentPath) } 是否有可能通过正常的发布path执行脚本,只需执行“testing”部分,并获得什么是好/不好的日志,不应用任何更改? 谢谢!
我能够通过下面的脚本远程连接到域控制器,但之后,我想运行disable-ADAccount , Get-ADUser命令,但我得到错误 Get-ADUser : The server has rejected the client credentials. 如何在单个脚本文件中调用活动目录命令? $password = ConvertTo-SecureString "Password" -AsPlainText -Force $cred= New-Object System.Management.Automation.PSCredential ("Lab\dcadmin", $password) Enter-PSSession -ComputerName dc-01 -Port 5985 -Credential $cred
我在Exchange中有100个数据库,我想执行任务。 我可能想要更改当前挂载的服务器或其他东西。 当我运行这个命令时,每个数据库都被串行同步。 我想同时运行它们。 我怎样才能做到这一点? Get-MailboxDatabaseCopyStatus -Server nyc01| where Status -eq Failed | Suspend-MailboxDatabaseCopy Get-MailboxDatabaseCopyStatus -Server nyc01 | where Status -eq FailedAndSuspended | Update-MailboxDatabaseCopy- SourceServer nyc02 -DeleteExistingFiles:$true -Confirm:$false
我有一个Powershell脚本,我需要部署到我的客户端PC,然后在关机时运行它。 我知道它可以运行PowerShell脚本在关机(好像我有问题也与此),问题是脚本使用“本地”的path,例如“$ ENV:LOCALAPPDATA”和“C:\ WINDOWS \ SYSTEM32 \ someprogram.exe“,所以我想我需要先在客户端的PC上拷贝它,然后使它在closures时因为path而运行。 首先,部署Powershell脚本以通过组策略在Shutdown上运行的正确方法是什么? 这是应该做的方式吗?
我在PowerShell脚本中使用以下命令来创build新的本地用户帐户。 该帐户已成功创build,正确的密码已设置,我可以login到罚款。 NET USER USER_01 "Password" /ADD /expires:NEVER /fullname:"USER_01" /comment:"MY Comment" 但大约1到2周后,帐户突然到期,我不能再RDP到帐户。 我已经尝试了两个参数/expires:NEVER和和/expires:0但都仍然过期线。 我在这里错过了什么?
我正在使用Azure中的DSC扩展configuration虚拟机,并在第一次部署时正常工作。 但是,如果我在DSC脚本中发生错误或需要修改,我无法理解如何强制虚拟机下载新的configuration。 我的DSC文件按照扩展名的需要存储在Azure blob存储中,所以我在这里上传了一个新的zip版本。 这应该自动触发虚拟机下载新文件,还是我需要运行一个命令来这样做?
我有一个脚本可以获取AD组的快照,并根据当前AD状态检查成员资格更改。 它将psobject添加到数组,并将表格输出到html文件。 问题是我想结合在组中的结果,所以它不会重复user1从group1中删除,user2从group1中删除。 目前的产出是: object action group user1 removed group1 user2 removed group1 userN removed groupN 我想要脚本来合并条目,所以输出将是: object action group user1 removed group1 user2 userN removed groupN 你有什么想法如何做?
我有以下简单的脚本,我用它来推送一些文件到一些Win7和Server2008机器。 在大多数情况下,本地用户没有密码。 但是,脚本失败,因为我试图通过pipe理员共享(c $)写入。 在ip.txt中为每个主机传递一个用户最简单的方法是什么? 另外,如果我在一个域上,修改脚本以使用用户和密码进行身份validation有多简单。 Write-Host 'Deploy Tools' $reader = [System.IO.File]::OpenText("c:\scripts\ip.txt") try { for(;;) { $line = $reader.ReadLine() if ($line -eq $null) { break } echo "**** files being copied to: $line ****" xcopy c:\scripts\tools \\$line\c$\windows\system32\ /Y } } finally { $reader.Close() }
我正在使用powerCLI verion 5.5,我写了下面的脚本: – Get-VMHost |Export-Csv -Path c:\test.csv -NoTypeInformation –UseCulture 我得到了vmhost的信息,如使用内存,构build,状态,CPU速度等,但对于生成的.csv文件中的networkinfo部分,我得到了“localhost”而不是VMHostnetworking信息。 所以我写了下面的脚本来获取IP,MAC和其他networking信息: – (Get-VMHost).NetworkInfo | Export-Csv -Path c:\test2.csv -NoTypeInformation -UseCulture 但是我只能得到这些信息,我无法获得VMHOst的IP,MAC: – VMHostId VMHost VMKernelGateway VMKernelGatewayDevice ConsoleGateway ConsoleGatewayDevice DnsAddress DnsFromDhcp DnsDhcpDevice DomainName HostName SearchDomain VirtualSwitch PhysicalNic ConsoleNic VirtualNic Uid IPv6Enabled ConsoleV6Gateway ConsoleV6GatewayDevice VMKernelV6Gateway VMKernelV6GatewayDevice ExtensionData ExtensionData2 HostSystem-ha-host ******.intra 172.16.20.1 FALSE localhost VMware.VimAutomation.ViCore.Interop.V1.Host.Networking.VirtualSwitchInterop[] VMware.VimAutomation.ViCore.Interop.V1.Host.Networking.Nic.PhysicalNicInterop[] VMware.VimAutomation.ViCore.Interop.V1.Host.Networking.Nic.HostVirtualNicInterop[] VMware.VimAutomation.ViCore.Interop.V1.Host.Networking.Nic.HostVirtualNicInterop[] […]
清理者问题的答案帮助我了解了一些Windows DHCP服务器 – 当非ADjoin设备获得IP地址时收到通知,但问题的答案涉及到Quest Poweshell cmdlet。 我想用普通的Powershell v4 cmdlet来实现一个解决scheme。 问题 我目前没有收到任何新的DHCP租约的通知。 当有人插入我们的插孔之一时,我希望收到通知,从我们的Windows Server 2012 DHCP服务器获取DHCP租约,但尚未joinAD。 所以我想要一个非ADjoin设备的新DHCP租约的电子邮件通知。 我试过了 我已经把一些Powershell代码放在一起,从上面提到的清理者的问题中借用一些。 Get-DhcpServerv4Lease -allleases -ScopeId #myscopeIDhere | Select-Object @{expression= {$_.hostname}; label='name' } | export-CSV -notypeinformation C:\dhcp\LeaseLog.csv import-module activedirectory #get input CSV $leaselogpath = "c:\DHCP\LeaseLog.csv" Import-csv -path $leaselogpath | #query AD for computer name based on csv log foreach-object ` […]