我有一个Powershell脚本来备份Windows Server 2008 R2框中的MSSQL。 它将特定的数据库备份到本地磁盘,然后将备份移到networking安装的CIFS卷。 无论我如何调用它,在本地运行时都可以100%正常工作。 我安装了Freesshd(最新),能够使用调度程序(不是Windows任务调度程序)启动脚本。 我不断得到cannot be loaded because the execution of scripts is disabled on this system. Please see "get-help abo ut_signing" cannot be loaded because the execution of scripts is disabled on this system. Please see "get-help abo ut_signing"我通过SSH连接,调用powershell,然后运行。\ scriptname。 运行get-executionpolicy返回remoteSigned 。 我通过密码validation以本地pipe理员帐户login。 ################# # Backup MSI # # A POwershell […]
我的任务是为现有用户添加一个电子邮件地址。 在Exchange 2010环境中,我有500个用户,其中的Company.com作为其电子邮件地址。 由于营销是垃圾邮件发送者的电子邮件分割,我必须将这些人移交给Marketing.com或Marketing2.com。 我可以想出如何通过CSV批量创build新电子邮件,但是我不确定如何在现有的用户名上添加新的电子邮件域,并将该新的电子邮件地址域设置为默认的答复地址。 我将从CSV导入用户,列A标题读取UserID和Column B标题读取域,以分别表示将被更改的用户的用户名(交换别名)和将被追加的电子邮件地址域。 我在PowerShell上相当体面,所以我并不是完全看着任何人为我做这个工作,只是指向正确的方向。 我正在考虑一些这方面的内容,但无法弄清楚。 $Mailboxes = Import-CSV C:\Scripts\EmailDeliverability\UserImport.csv ForEach ($Mailbox in $Mailboxes) {Get-Mailbox $UserID $UserID.EmailAddress += "$UserID@$Domain" | set-mailbox }
我正在使用PowerShell生成Exchange Server 2010中某些邮箱属性的报告。 以下代码使用远程会话从我的pipe理工作站完美地工作。 $Mailboxes = Get-mailbox -ResultSize Unlimited foreach ($Mailbox in $Mailboxes) { $Mailbox | Add-Member -MemberType "NoteProperty" -Name "MailboxSizeMB" -Value (Get-MailboxStatistics $Mailbox).TotalItemSize } 但是,当我将.Value.ToMb()方法添加到TotalItemSize属性时,脚本失败,出现以下错误: $Mailboxes = Get-mailbox -ResultSize Unlimited foreach ($Mailbox in $Mailboxes) { $Mailbox | Add-Member -MemberType "NoteProperty" -Name "MailboxSizeMB" -Value ((Get-MailboxStatistics $Mailbox).TotalItemSize.Value.ToMb()) } 您无法在空值expression式上调用方法。 在行:6 char:6 + $邮箱| 添加成员-MemberType“NoteProperty” – 名称“MailboxSizeMB”-Val […]
是否可以安全地定期轮询外部FTPS(或SFTP)服务器,并使用标准Windows Server 2012function在本地复制/移动文件? 我想象使用调度程序来进行轮询/移动,但有没有能力将FTPS / SFTP添加到组合中? 我遇到的唯一指导是把服务器变成一个FTPS服务器,但不知道如何使用操作系统的FTPS客户端…如果有的话。 谢谢
我有一个域上的2个帐户。 我可以使用一个帐户login到Citrix虚拟桌面,但是另一个不会让我login任何内容,直到我第一次更改密码。 我是远程的,因此我无法login到我有权访问的服务器的RDP会话,而无需先更改密码。 是否可以在知道密码的其他帐户上更改我的密码,但无法使用该帐户login任何内容?
我需要使用PowerShell将检查点types从“生产”更改为“标准”。 我目前创build新虚拟机的脚本粘贴在这里,但是创build了一个具有“生产”检查点的虚拟机。 param([String] $vmName, [String] $baseVMPath) $vhdPath = $baseVMPath + "\" + $vmName + "\Virtual Hard Disks\" + $vmName + ".vhdx" $switchName = "External switch for Hyper-V" New-VM -Name $vmName -MemoryStartupBytes 8GB -Generation 2 -NewVHDPath $vhdPath -NewVHDSizeBytes 127GB -Path $baseVMPath -SwitchName $switchName Add-VMDvdDrive -VMName $vmName –Path D:\Media\en_windows_10_enterprise_x64_dvd_6851151.iso $dvd = Get-VMDvdDrive -VMName $vmName Set-VMFirmware -VMName $vmName […]
最近我一直在努力parsing通过一系列服务器的DNS信息。 我似乎无法正确地将该variables传递给函数。 调用函数本身并传递一个variables就可以了。 我错过了什么? 请帮忙。 Function Get-DnsEntry($computer) { If($computer -match "^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$") { [System.Net.Dns]::GetHostEntry($computer).HostName } ElseIf( $computer -match "^.*\.\.*") {[System.Net.Dns]::GetHostEntry($computer).AddressList[0].IPAddressToString} ELSE { Throw "Specify either an IP V4 address or a hostname" } } $computer = '"abc01.somenetwork.net"' Get-DnsEntry $computer 所以,上面的代码,如果我只是运行Get-DnsEntry“abc01.somenetwork.net”它的工作原理。 如果我尝试像上面那样向它传递一个variables,它找不到主机。
这个查询gwmi -Class Win32_PerfFormattedData_NETFramework_NETCLRMemory给出了更less的结果,如果我在32位PowerShell控制台中运行它比64位之一。 它看起来像后台进程,如服务,只是显示在64位。 这并不是PowerShell所独有的,我在C#和F#中都得到了不一致的结果。 我也遇到了一些我使用的监视工具的问题。 这里发生了什么? 如何使32位模式正常工作?
该服务运行得很好,如sc query但它不起作用。 当它停止工作时,在日志文件中出现错误。 所以我想在日志文件上运行一个tail -f ,并在发生错误时重新启动服务。 我有Powershell版本1,所以我可以按照这个错误: Get-Content error.log -Wait | Select-String -pattern "I just died" 但是我怎样才能每次发现模式执行命令? 我想要运行的命令是: echo "Stopping service" >> restart.log sc stop "Floffy dude" sc start "Floffy dude" Get-Date >> restart.log echo "Restart done" >> restart.log 我不必是一个deamon。 我可以在cmd.exe中运行它。 其他可以在Windows Server 2008上运行而无需安装更多软件的解决scheme大多是受欢迎的。 编辑:基于input我想出了这个脚本: Get-Content -Wait error.log | Select-String -SimpleMatch "I just died" | […]
关于这个: Windows \ Temp大量的cab_XXXX文件 我无法删除这些文件。 我试图做一个移动删除,但有随机分散在那里被locking权限的文件。 我尝试以pipe理员身份运行PowerShell,但仍然给我权限问题。 有一个快速的方法来批量删除那里的所有cab_文件?