$popserver="pop3.sina.com.cn"
$Username="username"
$password="password"
$CRLF = "`r`n";
$Text=$null
$Server = new-object System.Net.Sockets.TcpClient($popserver,110)
try
{
#初始化
$NetStrm = $Server.GetStream()
$RdStrm= new-object System.Io.StreamReader($Server.GetStream(),[Text.Encoding]::GetEncoding("utf-8"))
$RdStrm.ReadLine()
#登录服务器过程
$Data = "USER "+ $Username+$CRLF
$szData = [Text.Encoding]::ASCII.GetBytes($Data.ToCharArray())
$NetStrm.Write($szData,0,$szData.Length)
$RdStrm.ReadLine()
$Data = "PASS "+ $password+$CRLF
$szData = [System.Text.Encoding]::ASCII.GetBytes($Data.ToCharArray())
$NetStrm.Write($szData,0,$szData.Length)
$RdStrm.ReadLine()
#向服务器发送STAT命令,从而取得邮箱的相关信息:邮件数量和大小
$Data = "STAT"+$CRLF;
$szData = [System.Text.Encoding]::ASCII.GetBytes($Data.ToCharArray())
$NetStrm.Write($szData,0,$szData.Length)
$RdStrm.ReadLine()
}
catch
{
$($_.Exception.Message)
}
try
{
$Data = "RETR "+ 5158+$CRLF #获取编号为5158的邮件
$szData = [System.Text.Encoding]::ASCII.GetBytes($Data.ToCharArray())
$NetStrm.Write($szData,0,$szData.Length)
$szTemp = $RdStrm.ReadLine();
if($szTemp[0] -ne '-')
{
#不断地读取邮件内容
while(-not $RdStrm.EndOfStream){
$Text+=$szTemp+$CRLF
$szTemp=$RdStrm.ReadLine()
}
}
$Text|out-file mail.eml -Encoding utf8
}
catch
{
$($_.Exception.Message)
}
$Data = "QUIT"+$CRLF;
$szData = [System.Text.Encoding]::ASCII.GetBytes($Data.ToCharArray())
$NetStrm.Write($szData,0,$szData.Length);
$RdStrm.ReadLine()
#断开连接
$NetStrm.Close();
$RdStrm.Close();
<#Data = "DELE" + MailNum.Text + CRLF;
szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
NetStrm.Write(szData,0,szData.Length);
Status.Items.Add(RdStrm.ReadLine()); #>
powershell pop3 收取邮件
最新推荐文章于 2024-07-24 15:26:05 发布