我好像在绕圈子。。
我尝试过Install-Package -Name 'MailKit' -Source 'nuget.org',但无法找到包源 nuget.org
我尝试从下载中进行本地安装,它只是不断要求依赖包,例如 System.Buffers,然后安装了 Portable.BouncyCastle,但随后遵循 System.Security.Cryptography.Pkcs,最后提示“检测到包的依赖循环”
有谁能够提供安装 MailKit 以便与 Powershell 一起使用的途径,或者提供从 Powershell 发送电子邮件的替代方法?
我只需要从脚本偶尔发送一封通知邮件(每天一封??),但 SendMail 不断发出警告,不应使用它并且已过时。
可能是一个愚蠢的问题,但我只是好奇。
为该类下的应用程序调用卸载时Get-CIMInstance和调用卸载时有区别吗?我问的唯一原因是:Get-WMIObjectWin32_Product
Get-CIMInstance卸载应用程序时,将使用某些程序重新启动我的计算机。Get-WMIObject卸载应用程序无需重新启动即可运行。另外,将 a 管道连接Get-Member到任何Get-CIMInstance产品,并没有给我卸载的方法,但它确实使用Get-WMIObject. 开发者就是这么写的吗?虽然,Invoke-CIMMethod -Name Uninstall仍然有效。
Get-CIMInstance这是我使用/卸载多个应用程序时所做的操作Invoke-CIMMethod -Name Uninstall:
Get-CimInstance -ClassName win32_product | Where-Object Name -Match "Visual" |
ForEach-Object -Process {
Invoke-CimMethod -InputObject $_ -Name Uninstall
}
#Methods Returned
<#
Get-CimInstance -ClassName win32_product | Where-Object Name -Match "Visual" | Get-Member -MemberType Method
TypeName: Microsoft.Management.Infrastructure.CimInstance#root/cimv2/Win32_Product
Name MemberType Definition
---- ---------- ----------
Clone Method System.Object ICloneable.Clone()
Dispose …Run Code Online (Sandbox Code Playgroud) 有人可以帮我做到这一点,以便只显示电子邮件日志的一行吗?像这样:
Bytes Copied: 27.0 k on Thursday, April 29, 2021 6:15:20 PM
Run Code Online (Sandbox Code Playgroud)
这段代码给了我这个日志:
$Logfile = "C:\Powershell\robocopy.txt"
Clear-Content "C:\Powershell\robocopy.txt" -Force
$EmailFrom = "testing@test.com"
$EmailTo = "test@test.com"
$EmailBody = "completed successfully. See attached log file"
$EmailSubject = "Summary"
$files = @("SCRIPT")
for($i = 0; $i -lt $files.Count; $i++){
robocopy "C:\$($files[$i])" "C:\NEW TEST\folder\folder\$($files[$i])" /Z /e /xx /W:5 /MAXAGE:2 /NFL /NDL /NJH /nc /np /unilog+:$Logfile
}
Send-MailMessage -To $EmailTo -from $EmailFrom -Subject $EmailSubject -Body $EmailBody -attachment $Logfile -smtpserver 192.168.24 -Port 25
#log give me …Run Code Online (Sandbox Code Playgroud) 我需要能够让用户运行需要 ActiveDirectory 模块的脚本。我复制了以下内容:
“C:\ Windows \ System32 \ WindowsPowerShell \ v1.0 \ Modules \ ActiveDirectory”,“Microsoft.ActiveDirectory.Management.resources.dll”,“Microsoft.ActiveDirectory.Management.dll”。
该脚本运行两个Get-ADUser命令,一个不带-Server参数,另一个带参数。问题是前者有效,但后者无效。
是否还有其他模块需要复制?