小编mee*_*eep的帖子

表达式仅允许作为管道的第一个元素

我是写作powershell的新手,但这正是我想要完成的.

  1. 我想比较两个excel文件的日期,以确定一个是否比另一个更新.
  2. 我想在没有excel的计算机上将文件从csv转换为xls.仅当上述语句为真时,才会复制初始xls文件.
  3. 我想将新转换的xls文件复制到另一个位置
  4. 如果文件已经打开,则无法复制,因此我想发送有关此操作成功或失败的电子邮件警报.

这是我遇到问题的脚本.错误是"表达式只允许作为管道的第一个元素." 我知道这与电子邮件操作有关,但我不知道如何手动编写这个包含所有这些变量.可能有更多的错误,但我现在没有看到它们.谢谢你的帮助,我很感激!

$CSV = "C:filename.csv"
$LocalXLS = "C:\filename.xls"
$RemoteXLS = "D:\filename.xls"
$LocalDate = (Get-Item $LocalXLS).LASTWRITETIME
$RemoteDate = (Get-Item $RemoteXLS).LASTWRITETIME
$convert = "D:\CSV Converter\csvcnv.exe"
if ($LocalDate -eq $RemoteDate) {break}
else { 
& $convert $CSV $LocalXLS
$FromAddress = "email@address.com"
$ToAddress = "email@address.com"
$MessageSubject = "vague subject"
$SendingServer = "mail.mail.com"
$SMTPMessage = New-Object System.Net.Mail.MailMessage $FromAddress, $ToAddress, $MessageSubject, $MessageBody
$SMTPClient = New-Object System.Net.Mail.SMTPClient $SendingServer
$SendEmailSuccess = $MessageBody = "The copy completed successfully!" | New-Object System.Net.Mail.SMTPClient mail.mail.com $SMTPMessage
$RenamedXLS = …
Run Code Online (Sandbox Code Playgroud)

powershell

9
推荐指数
2
解决办法
3万
查看次数

标签 统计

powershell ×1