标题: [其他] blat邮件命令行工具帮助文档,全程中文翻译 [打印本页]
作者: lancer 时间: 2023-8-18 10:35 标题: blat邮件命令行工具帮助文档,全程中文翻译
本来想发到教程模块的,但是账号等级太低了,没法在那个模块发布,管理员看到的话,麻烦您帮忙挪一下。
官网 & 下载
官网:http://www.blat.net/
64位版蓝奏云:https://leonca.lanzoue.com/iVeq515m0r0b
32位版蓝奏云:https://leonca.lanzoue.com/i3Pen15my8zg
blat的核心是blat.exe、blat.dll、blat.lib三个文件,其他的可以不要。
官方分为32位版和64位版,常规cmd窗口是32位的,位于C:\WINDOWS\system32
64位cmd位于C:\WINDOWS\SysWOW64,在32位cmd中运行64位blat时,窗口会出现中文乱码。
--------------------------------------------------------------------------------
发邮件示例
注意邮件标题如果是中文的,可能会出现乱码,可更换邮件命令。
示例1:邮件正文内容在txt文件中- blat C:\blat\body.txt -to 456456456@qq.com -u 123123123@qq.com -pw 123456 -sf C:\1.txt -attach C:\blat\attach.txt -charset gbk
复制代码
其中 -sf C:\1.txt 是邮件标题的txt文本,文本编码方式必须为ANSI,否则也是乱码。
示例2:直接发送邮件内容- blat -body "正文内容" -to 456456456@qq.com -u 123123123@qq.com -pw 123456 -sf C:\1.txt -attach C:\blat\attach.txt -charset gbk
复制代码
邮件正文内容有中文会乱码,需要在末尾加上-charset gbk
示例3:邮件标题内容在命令中- blat -body "正文内容" -to 456456456@qq.com -u 123123123@qq.com -pw 123456 -subject "标题内容" -attach C:\blat\attach.txt -charset gbk
复制代码
当邮件内容在命令行中,m邮件标题必须用""括起来,否则标题乱码
发件之前,需要先安装发件服务器- @echo off
- rem 安装邮件服务器
- blat -install smtp.qq.com 123123123@qq.com
-
- rem 发送邮件
- blat C:\blat\body.txt -to 456456456@qq.com -u 123123123@qq.com -pw 123456 -subject "我爱你" -attach C:\blat\attach.txt -charset gbk
- pause
复制代码
- 123123123@qq.com ——发送邮箱;多个账号用逗号分隔
- 456456456@qq.com ——接收邮箱;
- -pw 123456 ——发送邮箱密码,可用base64编码,还没试过;
- -subject "我爱你" ——邮件标题(必须用引号括起来,否则标题乱码);也可以使用这个参数-sf C:\1.txt ,文件中存放标题,文本编码为ANSI
- -attach C:\blat\attach.txt ——附件,把内容保存到attach文档内;
- C:\blat\body.txt ——邮件正文,用body.txt保存在程序下。注意正文的txt文件编码为ANSI,否则乱码。
- smtp.qq.com ——邮箱服务地址。
- -charset gbk ——文件正文中有中文内容乱码时,在命令末尾加入此参数。
--------------------------------------------------------------------------------
语法- Blat <filename> -to <recipient> [optional switches (see below)]
-
- Blat -SaveSettings -f <sender email addy> -server <server addr>
- [-port <port>] [-try <try>] [-profile <profile>]
- [-u <login id>] [-pw <password>]
- or
- Blat -install <server addr> <sender's addr> [<try>[<port>[<profile>]]] [-q]
-
- Blat -profile [-delete | "<default>"] [profile1] [profileN] [-q]
-
- Blat -h 帮助信息
复制代码
--------------------------------------------------------------------------------
安装- -SaveSettings
- 将常用设置存储到Windows注册表中。采用与-install相同的参数,并且仅用于SMTP设置
-
- -install[SMTP|NNTP|POP3|IMAP] <server addr> <sender email addr> [<try n times>
- [<port> [<profile> [<username> [<password>]]]]]
- 设置配置文件的服务器、发件人、尝试次数和端口(尝试次数和端口,可能被替换为“-”)
- 端口默认值为SMTP=25、NNTP=119、POP3=110、IMAP=143
- 默认配置文件可以用“-”指定
- 用户名和/或密码可以存储在注册表中
- 选项的顺序是特定的
- 使用-installNNTP存储NNTP信息
-
- 使用-installPOP3存储POP3信息(忽略sender和try,请用“-”代替它们)
- 使用-installIMAP存储IMAP信息(忽略sender和try,请用“-”代替它们)
-
- [] 可选参数
- <> 必须参数
复制代码
<server addr> 发邮件的服务器
<sender email addr> 发件人邮箱账号
<try n times> 尝试次数
<port> 端口
<profile> 配置文件
<username> 用户名
<password> 用户密码
--------------------------------------------------------------------------------
基本要素- <filename> : 带有要发送的消息正文的文件(如果消息正文在命令行上),请使用连字符(-)作为第一个参数,-body后面跟着消息(如果消息来自控制台/键盘),请将连字符作为第一个参数,但不要使用-body选项。
- -of <file> : 包含更多选项的文本文件(也称-optionfile)
- -to <recipient> : 收件人列表(也是-t)(逗号分隔)
- -tf <file> : 收件人列表文件名
- -cc <recipient> : 抄送收件人列表(也是-c)(逗号分隔)
- -cf <file> : 抄送收件人列表文件名
- -bcc <recipient>: 盲复写收件人列表(也是-b)(逗号分隔)
- -bf <file> : bcc收件人列表文件名
- -maxNames <x> : 发送到<x>个收件人的组
- -ur : 如果未使用-To和-cc选项,请将To:header设置为Undisclosed Recipients
- -subject <subj> : 主题行,用引号括起来以包含空格(也是-s)
- -ss : 如果未定义,则抑制主题行
- -sf <file> : 包含主题行的文件
- -bodyF <file> : 包含消息正文的文件
- -body <text> : 消息正文,用引号(“)括起来以包含空格
- -sig <file> : 包含您的电子邮件签名的文本文件
- -tag <file> : 包含标语的文本文件,可随机选择
- -ps <file> : 最终消息文本,可能用于取消订阅说明
复制代码
--------------------------------------------------------------------------------
注册表覆盖- -p <profile> : 使用<profile>中定义的服务器、用户和端口发送
- : 如果在<profile>中没有定义,请使用用户名和密码
- -profile : 列出注册表中的所有配置文件
- -server <addr> : 指定要使用的SMTP服务器(可选,addr:port)
- -serverSMTP <addr>
- : 与-server相同
- -serverNNTP <addr>
- : 指定要使用的NNTP服务器(可选,addr:port)
- -serverPOP3 <addr>
- : 指定发送电子邮件前需要POP3访问时要使用的POP3服务器(可选,addr:port)
- -serverIMAP <addr>
- : 指定发送电子邮件前需要IMAP访问时要使用的IMAP服务器(可选,addr:port)
- -f <sender> : 覆盖默认发件人地址(必须为服务器所知)
- -i <addr> : 一个“发件人:”地址,服务器不一定知道
- -port <port> : 要在SMTP服务器上使用的端口,默认为SMTP(25)
- -portSMTP <port>: 与-port相同
- -portNNTP <port>: 要在NNTP服务器上使用的端口,默认为NNTP(119)
- -portPOP3 <port>: 要在POP3服务器上使用的端口,默认为POP3(110)
- -portIMAP <port>: 要在IMAP服务器上使用的端口,默认为IMAP(110)
- -u <username> : AUTH LOGIN(与-pw一起使用)或AUTH GSSAPI与-k一起使用的用户名
- -pw <password> : AUTH LOGIN的密码(与-u一起使用)
- -pu <username> : POP3登录的用户名(与-ppw一起使用)
- -ppw <password> : POP3登录的密码(与-pu一起使用)
- -iu <username> : IMAP登录的用户名(与-ppw一起使用)
- -ipw <password> : IMAP LOGIN的密码(与-pu一起使用)
- -k 未知的相互身份验证和AUTH GSSAPI
- -kc UNKNOWN仅客户端身份验证和AUTH GSSAPI
- -service <name> : 设置GSSAPI服务名称(与-k一起使用),默认“smtp@server“
- -level <lev> : 将GSSAPI保护级别设置为<lev>,该级别应为
- : 无(none)、完整性(integrity)或隐私(privacy)(默认GSSAPI级别为隐私)
- -nomd5 : 不要使用CRAM-MD5身份验证。在服务器的CRAM-MD5损坏的情况下使用此选项,例如网络解决方案。
复制代码
--------------------------------------------------------------------------------
其他RFC头开关- -organization <organization>
- : 组织字段(也称为-o和.org)
- -ua : 包括用户代理头行,而不是X-Mailer
- -x <X-Header: detail>
- : 自定义“X-”标头。例如:-x“x-INFO:Blat太棒了!”
- -noh : 阻止X-Mailer/User-Agent标头显示Blat主页
- -noh2 : 完全阻止X-Mailer标头
- -d : 请求处置通知
- -r : 请求回执
- -charset <cs> : 用户定义的字符集(字符编码)。默认值为iso-8859-1
- -a1 <header> : 在常规标头的末尾添加自定义标头行
- -a2 <header> : 与-a1相同,用于第二个自定义标题行
- -msgid <id> : 将此字符串<id>用于消息id:标头值
- -dsn <nsfd> : 使用传递状态通知(RFC 3461)
- n=从不,s=成功,f=失败,d=延迟
- 可以一起使用,但是N优先
- -hdrencb : 如果需要,请使用base64对标头进行编码
- -hdrencq : 如有必要,使用带引号的可打印标头进行编码
- -priority <pr> : 设置消息优先级,0表示低,1表示高
- -sensitivity <s>: 将邮件敏感度设置为 0表示个人,1表示私人,2表示公司机密
- -mdn <type> : 将Message Disposition Notification设置为<type>,其中可以显示、调度、处理、删除、拒绝或失败类型。消息将标记为“MDN自动发送”
复制代码
--------------------------------------------------------------------------------
附件和编码选项- -attach <file> : 将二进制文件附加到消息(文件名逗号分隔)
- -attacht <file> : 将文本文件附加到消息(文件名逗号分隔)
- -attachi <file> : 将文本文件附加为内联(文件名逗号分隔)
- -embed <file> : 在HTML中嵌入文件。HTML中的对象标记必须使用cid:tag指定内容id。例如:<img src=“cid:image.jpg”>
- -af <file> : 包含要附加的二进制文件列表的文件(逗号分隔)
- -atf <file> : 包含要附加的文本文件列表的文件(逗号分隔)
- -aef <file> : 包含要附加的嵌入文件列表的文件(逗号分隔)
- -base64 : 使用base64(二进制MIME)发送二进制文件
- -uuencode : 发送二进制文件UUEncoded
- -enriched : 发送富集的文本消息(内容类型=文本/富集)
- -unicode : 消息正文采用16位或32位unicode格式
- -html : 发送html消息(内容类型=text.html)
- -alttext <text> : 用作替代文本的纯文本
- -alttextf <file>: 用作替代文本的纯文本文件
- -mime : mime引用的可打印内容传输编码
- -8bitmime : 在发送MIME时请求8bit数据支持
- -multipart <size>
- : 发送多部分邮件,打破<size>KB边界上的附件,其中<size>是每1000字节
- -nomps : 不允许多部分消息
- -contentType <string>
- : 对于没有注册扩展内容类型的附件,请在ContentType标头中使用<string>
- 例如:-contentype“text/calendar
复制代码
--------------------------------------------------------------------------------
作者: lancer 时间: 2023-8-18 10:36
NNTP特定选项- -groups <usenet groups>
- 新闻组列表(逗号分隔)
复制代码
--------------------------------------------------------------------------------
其他选项- -xtndxmit : 首次访问POP3时尝试使用POP3进行传输
- -h : 显示此帮助(也可以是-?、/?、-help或/help)
- -q : 抑制所有输出到屏幕
- -debug : 将服务器通信回显到日志文件或屏幕
- (如果回显到屏幕,则覆盖-q)
- -log <file> : 将除用法以外的所有内容记录到<file>
- -timestamp : 当使用-log时,每个日志行都会添加一个时间戳
- -overwritelog : 使用-log时,覆盖日志文件
- -ti <n> : 将超时设置为“n”秒。Blat将等待服务器响应“n”秒
- -try <n times> : blat应该尝试发送多少次(1到“无限”)
- -binary : 不要在消息正文中将ASCII|(管道,0x7c)转换为CrLf
- -hostname <hst> : 选择用于通过SMTP发送消息的主机名这通常是您的本地机器名
- -raw : 不在标头后添加CR/LF
- -delay <x> : 当与-maxnames或-multart一起使用时,在发送消息之间等待x秒
- -comment <char> : 使用此字符可以标记选项文件和收件人列表文件中注释的开始。默认值为;
- -superdebug : hex/ascii在Blat和服务器之间转储数据
- -superdebugT : ascii在Blat和服务器之间转储数据
- -superDuperDebug: 记录更多关于Blat函数调用的调试消息
复制代码
--------------------------------------------------------------------------------
注意事项
请注意,如果使用“-i”选项,<sender>将包含在邮件标头的“Reply to:”和“sender:”字段中。
可以选择使用以下选项来代替-f和-i选项:
- -mailfrom<addr>RFC 821 MAIL From:语句
- -from<addr>RFC 822 from:语句
- -replyto<addr>RFC 822 Reply-To:语句
- -returnpath<addr>RFC 822返回路径:语句
- -sender<addr>RFC 822 sender:语句
对于向后一致性,-f和-i选项优先于这些选项
RFC 822定义的选项。如果省略了-f和-i选项,则RFC 821 MAIL FROM语句将默认使用安装定义的默认发件人地址。
乱码问题
①邮件主题乱码
邮件主题乱码出现在-subject参数中,也就是直接在命令行中写入中文主题,主题乱码已经在最新的v3.2.24版本中解决,更新版本即可。
②正文乱码
正文乱码是因为编码问题,可以在命令末尾加上-charset gbk参数或-charset utf-8参数解决,可具体进行测试,更改正文编码。
注意,当正文内容放在文本中时,文本的编码必须为ANSI。
③命令行乱码
在命令提示符窗口内,中文部分显示乱码,但接收邮件主题和邮件正文都正常。
窗口出现乱码是因为运行中输入cmd打开的是32位的cmd窗口,而32位cmd窗口运行64位blat会出现乱码,但在64位cmd中运行64位blat不会出现乱码问题。
作者: jszw666 时间: 2023-8-18 11:26
楼主辛苦了
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |