【发布时间】:2015-02-27 20:36:40
【问题描述】:
我正在尝试通过电子邮件发送每天生成的报告。此外,尝试计算 csv 中的用户行数,并创建仅计算和发送最新报告的逻辑。
尽管变量中的文件名似乎具有正确的值,但当我在运行此脚本后检查时,我在 Import-csv 上不断收到错误消息,说它在默认用户目录中找不到文件而不是我指定的路径。这很烦人。请帮忙。谢谢
Add-PSSnapin Quest.ActiveRoles.ADManagement
$reports = "\\Server\G$\Marc\Scripts\DailyReports\active\"
$latest = Get-ChildItem -Path $reports | Sort-Object -Descending | Select-Object -First 1
$people = Get-QADUser -SizeLimit 0 -LdapFilter "(&(employeeID=*)(&(objectCategory=person)(objectClass=user)(!objectClass=inetOrgPerson))(sAMAccountName=*))” -includedproperties dn,sn,title,givenname,company,employeeID,primarysmtpaddress,SamAccountName
$people | select dn,sn,title,givenname,company,employeeID,primarysmtpaddress,@{Label="SamAccountName";Expression={$_.SamAccountName.ToLower()}} | ConvertTo-Csv -NoTypeInformation | select -Skip 1 > \\Server\G$\Marc\Scripts\DailyReports\active\Total-Active-Users-AD_$((Get-Date).ToString('MM-dd-yyyy')).csv
$TotalUsers = Import-csv -Path $Latest.name | Measure-Object | Select-Object -expand Count | Out-String
send-mailmessage -from "email@me.com" -to "email@me.com" -subject "Total AD Active Users Report " -body "Total Active Users today was $TotalUsers" -Attachments $Latest.name -priority High -dno onSuccess, onFailure -smtpServer Smtp.server.com
【问题讨论】:
标签: powershell csv