我不想“删除X天以前的文件”。 如果我想这样做,我只是从那里已经写了成千上万的脚本之一,我不会问这样一个微不足道的问题在ServerFault上。 我想要删除特定文件夹中除最近N个文件以外的所有文件。 背景:将远程系统configuration为将定期存档文件转储到Windows服务器上的共享。 这些文件的命名约定为YYYYMMDD-hhmm.ext。 如果存档过程失败,我不希望清除脚本删除文件,只是因为他们比那么多天更旧。 无法将远程系统configuration为在归档过程中清除文件。 例如,脚本运行时可能有10个文件,可能有7个文件,文件夹中可能有5个文件。 无论年龄多大,我都需要至less保留最近的5次。 这可以用PowerShell完成吗? 编辑:这将是可取的忽略不符合命名约定的文件或文件夹。 其他文件和文件夹不应该被删除,也不应该混淆脚本(导致保留less于5个档案文件)。
我正在尝试使用任务计划程序来运行PowerShell脚本,并通过电子邮件发送一些命令的输出。 我正在使用“Send-MailMessage”来执行此操作。 当我使用域pipe理员帐户运行计划任务时,我收到电子邮件就好,但是当我使用服务帐户时,电子邮件不通过。 我正在使用的服务帐户同时具有“作为服务login”和“作为批处理login”。 它也在我运行的服务器上有本地pipe理员权限。 需要注意的是:我已经使用telnet通过我正在使用的SMTP服务器发送电子邮件,并且能够发送未经validation的电子邮件,所以问题不在于SMTP服务器的身份validation问题。 我在这个服务帐户上缺less什么凭证? 还有什么我可以失踪? 谢谢您的帮助!
我正在编写一个Powershell脚本来将所有公司用户从CSV文件填充到Active Directory。 该脚本使用Powershell命令New-ADUser ,并且应该知道,对于每个用户,添加path的位置在哪里,例如: "OU=IT Dept,OU=Users,DC=local,DC=contoso" 问题是:这个活动目录还没有任何用户,所以没有创build组织单元,每当我运行脚本,如果path不存在,用户不会被创build。 我查找了一个创build组织单位的命令,比如New-ADOrganizationalUnit或者dsadd ,但是他们不支持recursion创build,比如 "OU=Helpdesk,OU=IT Dept,OU=Users,DC=local,DC=contoso" 如果 "OU=IT Dept,OU=Users,DC=local,DC=contoso" 尚不存在。 有什么办法使用New-ADOrganizationalUnit ? 谢谢
我注意到,当我使用Powershell获取Active Directory域安全组的组成员资格时,Powershell cmdlet Get-ADGroupMember $Group失败,并显示以下错误消息: PS C:\> get-adgroupmember MyGroup get-adgroupmember : An operations error occurred At line:1 char:1 + get-adgroupmember MyGroup + ~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (MyGroup:ADGroup) [Get-ADGroupMember], ADException + FullyQualifiedErrorId : ActiveDirectoryServer:8224,Microsoft.ActiveDirectory.Management.Commands.GetADGroupMember 我已经尝试指定-server $DC参数,以便该cmdlet以特定DC为目标,然后在重现该错误时检查该DC上的安全日志,并且不会生成相关的安全失败审核。 我打开了services\NTDS\Diagnostics项中的所有Diagnosticsregistry项,并且在目录服务日志中也没有产生任何有趣的内容。 如果我从MyGroup中删除驻留在其他域中的组成员,则该cmdlet不起作用。 有趣的是,我注意到如果我在DC上本地运行命令,它就可以工作。 但是,当我从成员服务器远程运行命令时,使用相同的用户帐户(谁是域pipe理员)失败。 任何想法有什么不对?
我想从WMI命名空间的顶部开始,recursion遍历所有对象,然后recursion遍历每个对象的属性列表,过滤掉并返回仅控制名称中包含mem的属性。 这是我迄今为止: gwmi -namespace "root\cimv2" -list |???? |get-Member -MemberType property | Where-Object { $_.name -match 'mem'} 注意大| 在那里的中间。 如果我删除,命令似乎运行,但未能find我知道应该find的属性。 为什么? 我认为这是因为我从以下两个命令得到不同的输出: gwmi "Win32_operatingSystem" |get-Member -MemberType property (73 lines of output) gwmi -namespace "root\cimv2" -list |where-object { $_.Name -eq 'Win32_OperatingSystem' } |get-Member -MemberType property (10 lines of output) 我想要的是recursion地连接这个过程的单线程: gwmi -namespace "root\cimv2" -list (manual selection of […]
我需要一个PowerShell脚本,使用电子邮件地址获取login名。 我有一个用户的电子邮件地址的笔记。 我想获取域中用户的loginID和帐户信息。 任何人都可以帮助这个。 问候,Karthick。
环境:Office 365在线。 Exchange v15.1.933.16。 我们的全球pipe理员之一通过交换pipe理中心在移动设备上执行远程擦除,然后从EAC“删除”设备。 因此,在GUI中确定擦除是否成功是不可能的。 任何熟悉cmdlet的人都可以检查擦除命令的状态? 到目前为止,找不到任何与我的search。 谢谢 编辑:感谢BasitanW,但是我应该有更清楚的表明,pipe理员请求擦拭后删除设备。 在Exchangepipe理中心中没有设备可见,并且Get-MobileDevice命令无法为PS中的此邮箱生成结果。
我想检查我的联系人pipe理系统中的电子邮件地址是否有效,我认为可以这样做的最佳方式是获取其域名的MXlogging,然后打开SMTP连接并查看远程服务器是否接受电子邮件地址作为有效的“TO”。
我有一个Windows 2008 R2 SP1服务器,当前所有的Windows更新。 我正在尝试运行PowerShell,但它给出了以下错误: 内部Windows PowerShell错误。 加载托pipe的Windows PowerShell失败,错误为80070002 然后立即返回到cmd行。 我已经运行sfc /scannow ,它已经回来干净。 我曾尝试运行powershell -noprofile
如何使用PowerShell在远程计算机上执行程序?