[英]Executing inline powershell script
我正在尝试从Task Scheduler调用嵌入式Powershell脚本,以在触发特定事件时发送电子邮件。 我无法在“任务计划程序”操作窗口中使用本机的“发送电子邮件”操作,因为SMTP服务器需要SSL,并且无法在操作窗口中指定此操作。 因此,我希望“启动一个程序”并调用某些东西来发送电子邮件,但我想避免使用第三方应用程序(例如sendEmail),以期希望能够调用类似于以下内容的内联Powershell脚本。
将“程序/脚本”字段设置为powershell
,将参数字段设置为:
-Command "{Send-MailMessage -From "Name <name@domain.com>" -To "name@domain.com" -Subject "Test Subject" -Body "Test body at $(Get-Date -Format "dd/MM/yyyy")." -SmtpServer "smtp.domain.com" -UseSSL}"
由于嵌套引号等原因,这显然不起作用,因此我一直尝试在命令提示符中使用不同的变体,但是我一生都无法弄清楚我需要转义哪些字符以及如何转义它们。
任何帮助将非常感激。
这应该工作:
powershell -Command 'Send-MailMessage -From "Name <name@domain.com>" -To "name@domain.com" -Subject "Test Subject" -Body "Test body at $(Get-Date -Format "dd/MM/yyyy")." -SmtpServer "smtp.domain.com" -UseSSL'
您可以在双引号周围使用单引号,并且不需要在命令前后使用大括号。
PowerShell-命令“ 和 {Get-EventLog -LogName应用程序}”
PowerShell-命令“ &{发送邮件消息-从'名称'-到'name@domain.com'-主题'测试主题' -正文('测试正文在{0}。'-f(获取日期-格式' dd / MM / yyyy')) -SmtpServer'smtp.domain.com'-UseSSL} “
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.