Linux下发送邮件

17 篇文章 0 订阅
9 篇文章 0 订阅

我的OS是RHEL5.6-x86-64

1、首先要介绍的是使用mail命令发送邮件,这也许是很多人首先会想到的命令了。

使用mail命令发送邮件需要依赖于sendmail服务,改服务必须启动才能使用mail命令发送邮件,使用-v选项可以开到,当sendmail服务为启动时会有如下错误:

[root@instsvr1 ~]# service sendmail stop
Shutting down sm-client: [  OK  ]
Shutting down sendmail: [  OK  ]
[root@instsvr1 ~]# echo "Test Mail"|mail -v -s "Test Mail" ********@163.com
********@163.com... Connecting to [127.0.0.1] via relay...
********@163.com... Deferred: Connection refused by [127.0.0.1]

mail命令的安装包是:mailx-8.1.1-44.2.2.x86_64.rpm

sendmail的安装包是:sendmail-8.13.8-8.el5.x86_64.rpm

安装介质可以从光盘里面获取或者使用yum安装,在此不赘述,不过这两个东西一般安装系统是可能都会是已安装的!

废话不多说了,直接介绍mail命令的常用格式,其他情况请google或者看man mail或者mail -help

a)简单的发送不带附件的text格式的邮件:

mail -v -s "test mail" user1@163.com user2@163.com -b user3@163.com -c user4@163.com < attached.txt

cat attached.txt | mail -v -s "test mail" user1@163.com user2@163.com -b user3@163.com -c user4@163.com

等价

注:

1)第一个命令使用的重定向符“<”的方式,第二个命令使用的是管道符"|"的方式,这两种方式适合需要发送的内容较多的场景。

2)-v 选项:列印出讯息,例如送信的地点、状态等等。 (verbose)

3)-s选项:邮件标题

3)-b选项:密送用户列表

4)-c选项:抄送用户列表

5)user1@163.com和user2@163.com:就是需要直接发送的用户列表

6)mail命令的其他选项:

      -i选项:忽略TTY的中断信号。这个对于使用嘈杂的电话线路特别有用。

      -I选项:强制mail运行在交互模式,即使不是在终端上输入。当发送邮件时,特殊的字符'~'只在交互模式下起作用。

     -n选项:启动的时候不读取 /etc/mail.rc 脚本文件。

     -N选项:当读取邮件或者编辑邮件的时候不显示邮件头。

     -f选项:用于重mbox或者指定的文件名中读取邮件,仅限于本地使用,并且该选项只能和【iInNv】选项同时使用

     -u选项:用于读取指定本地用户的邮件,并且该选项也只能和【iInNv】选项同时使用

[root@instsvr1 ~]# mail -help
mail: invalid option -- h
Usage: mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr ...
            [-- sendmail-options ...]
       mail [-iInNv] -f [name]
       mail [-iInNv] [-u user]

如果需要进行交互的输入则可直接使用如下命令:

[root@instsvr1 ~]# mail user1@163.com
Subject: test input
haha
is a test mail
byebyte

Cc:

注释:如果mail命令中不使用-s选项,那么第一个要求输入的就是邮件标题,之后的就是邮件内容了,需要结束编辑的话就使用【Ctrl+D】然后【Enter】回车即可完成。

b)发送带有附件的邮件

使用mail命令发送带附件的邮件时需要使用到uuencode命令,这就需要安装一个叫sharutils的rpm包了,也可以在安装光盘里面找到sharutils-4.6.1-2.x86_64.rpm,也还可以使用yum进行安装:yum install sharutils

首先简要说一下uuencode/uudecode编解码:
uuencode把二进制文件转化成为可读ASCII文件,适合email传输。编码后的文件比原文件要大35%左右,内容第一行一般是"begin, 644, 文件名",最后一行是"end",中间的内容都以"M"开头,满61字符换行。
【注意】如果使用-m参数,则使用base64编码格式

[root@instsvr1 Desktop]# uuencode image.jpg images.jpg
begin 644 images.jpg
M_]C_X``02D9)1@`!`0$`8`!@``#_VP!#``@&!@<&!0@'!P<)"0@*#!0-#`L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+#`Q-#0T'R<Y/3@R/"XS-#+_
MVP!#`0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P``1"`0`!0`#`2(``A$!`Q$!_\0`
M'P```04!`0$!`0$```````````$"`P0%!@<("0H+_\0`M1```@$#`P($`P4%

省略。。。。。。。。。。。。。。。

M"C#`+R1\N<!FVFMI,\?]M6=OIAOK$74B6\\@N59RC.OW2$7:>/?^></[=;?\
M]4_.FF^MO^>B?G3]BK23>X>UJ7BU&UOZ^19U"^GU+4)[VY.99G+MR<#V&>P'
B`]A5-AFE-Y;G_EHGYTS[7!_ST3_OH5NDDK(RM-N[6I__V0``
`
end

上面命令行参数第一个image.jpg是需要编码的文件名,第二个images.jpg是编码后的文件名(解码时使用),
[root@instsvr1 Desktop]# uuencode image.jpg images.jpg > images.uue
[root@instsvr1 Desktop]# l
total 296
-rw-r--r-- 1 root root 122479 Apr  7 17:24 image.jpg
-rw-r--r-- 1 root root 168779 Apr  7 17:27 images.uue
[root@instsvr1 Desktop]# uudecode images.uue
[root@instsvr1 Desktop]# l
total 420
-rw-r--r-- 1 root root 122479 Apr  7 17:24 image.jpg
-rw-r--r-- 1 root root 168779 Apr  7 17:27 images.uue
-rw-r--r-- 1 root root 122479 Apr  7 17:27 images.jpg

下面举例说说用mail命令结合uuencode快速发送email附件,images.jpg将作为附件名称:

[root@instsvr1 ~]# uuencode image.jpg images.jpg|mail -v -s "images" user1@163.com

在Winows下用Outlook,Foxmail等客户端能自动识别经过uuencode编码的附件。如果附件被收取到Linux/Unix等系统下,如果Linux下的MUA或者客户端不识别,可以手工处理邮件提取相应的部分,用uudecode解码即可。

【注意】这里不能使用-m参数进行base64编码,否则客户端软件无法识别附件。

【注意】其实这种方式并不是很好,因为发送的邮件中出了uuencode编码的附件外,邮件内容是uuencode编码的内容,如果附件较大的话邮件内容就会比较长。并且uuencode编码的附件还需要转码才能看得到,反正我在foxmail里面不能自动解码,很不方便。但是我们可以先打包后再作为附件发送,因为解压工具会可以自动帮忙解码,如:

tar cvf attached.tar attached.txt image.jpg install.log;uuencode attached.tar attached.tar |mail -v -s testmail user1@163.com

可以直接打开attached.tar附件,不需要手工解码,不过这样还是存在邮件内容为附件的uuencode编码内容的情况,所以我们再来介绍另一个发送邮件的工具mutt。

【注意】使用uuencode结合mail发送邮件时不能写邮件内容,因为邮件内容都是附件的uuencode编码


2、接下来介绍的就是强悍的mutt工具了,mutt命令的详细帮助同样请google或者man mutt了或者mutt -help

【注意】由于mutt的功能比较庞大,我在此就不介绍那么详细,只介绍常用的,推荐网文【Mutt中文手册

mutt工具需要安装mutt-1.4.2.2-3.0.2.el5.x86_64.rpm包,同样还是在安装光盘里面可以找到,或者还是yum install mutt了,安装不赘述。

同样的简单的text格式邮件发送命令与mail命令同,不在赘述,如:

cat attached.txt|mutt -s testmailing user1@163.com

mutt -s testmailing user1@163.com < attached.txt

【注意】使用定向符"<"发送时没有使用管道符"|"快,并且这两种方式当attached.txt中存在中文此类字符时会出现乱码,这时需要设置系统LANG环境变量为utf8,注意是utf8设置成zh_CN.utf8都不行!

export LANG=utf8;mutt -s zhss mrluoe@163.com < attached.txt

还可以使用-e选项指定字符集编码,如:

cat attached.txt|mutt -s html -e "set charset=gb2312" mrluoe@163.com

下面接着介绍使用mutt发送带有附件的邮件了,这就比较简单了,只需使用一个-a选项即可,当需要发送多个附件时使用多个-a选项即可,如:

mutt -s attached -a attached.txt -a image.jpg user1@163.com < attached.txt

使用mutt发送附件就简单了,而且邮件内容同样可以是重定向符"<"或者管道符"|"的内容来指定,也可以使用手工输入的方式。

[root@instsvr1 ~]# mutt -help
Mutt 1.4.2.2i (2006-07-14)
usage: mutt [ -nRyzZ ] [ -e <cmd> ] [ -F <file> ] [ -m <type> ] [ -f <file> ]
       mutt [ -nx ] [ -e <cmd> ] [ -a <file> ] [ -F <file> ] [ -H <file> ] [ -i <file> ] [ -s <subj> ] [ -b <addr> ] [ -c <addr> ] <addr> [ ... ]
       mutt [ -n ] [ -e <cmd> ] [ -F <file> ] -p
       mutt -v[v]

options:
  -a <file>     attach a file to the message
  -b <address>  specify a blind carbon-copy (BCC) address
  -c <address>  specify a carbon-copy (CC) address
  -e <command>  specify a command to be executed after initialization
  -f <file>     specify which mailbox to read
  -F <file>     specify an alternate muttrc file
  -H <file>     specify a draft file to read header from
  -i <file>     specify a file which Mutt should include in the reply
  -m <type>     specify a default mailbox type
  -n            causes Mutt not to read the system Muttrc
  -p            recall a postponed message
  -R            open mailbox in read-only mode
  -s <subj>     specify a subject (must be in quotes if it has spaces)
  -v            show version and compile-time definitions
  -x            simulate the mailx send mode
  -y            select a mailbox specified in your `mailboxes' list
  -z            exit immediately if there are no messages in the mailbox
  -Z            open the first folder with new message, exit immediately if none
  -h            this help message

【中文】

   -a<文件>    在邮件中加上附加文件。
   -b<地址>    指定密件副本的收信人地址。
   -c<地址>    指定副本的收信人地址。
   -f<邮件文件>    指定要载入的邮件文件。
   -F<配置文件>    指定mutt程序的设置文件,而不读取预设的.muttrc文件。
   -h    显示帮助。
   -H<邮件草稿>    将指定的邮件草稿送出。
   -i<文件>    将指定文件插入邮件内文中。
   -m<类型>    指定预设的邮件信箱类型。
   -n    不要去读取程序培植文件(/etc/Muttrc)。
   -p    在mutt中编辑完邮件后,而不想将邮件立即送出,可将该邮件暂缓寄出。
   -R    以只读的方式开启邮件文件。
   -s<主题>    指定邮件的主题。
   -v    显示mutt的版本信息以及当初编译此文件时所给予的参数。
   -x    模拟mailx的编辑方式。
   -z    与-f参数一并使用时,若邮件文件中没有邮件即不启动mutt。



3、最后来介绍一下怎么发送html格式的邮件

mail命令只能支持text格式的邮件内容发送,如果需要发送html格式内容的邮件,那么需要使用sendmail命令或者mutt命令,下面我只介绍sendmail命令,mutt命令发送html请google

直接上脚本,不解释:

脚本1:

#!/bin/bash
#send a html-email using sendmail command
#author:mlsx mlsx(dot)xplore(at)gmail(dot)com
#license:GPL

from="my@mydomain.com"                                                            --- 指定发送者名称
subject="test html-email using mail command"                         --- 邮件标题
msgdate=`date +"%a, %e %Y %T %z"`  # Leave alone             --- 邮件日期
emailtarget="user1@163.com user2@163.com"                      --- 邮件接受者列表

daemail=$(cat <<!
Date: $msgdate
From: $from
To:$emailtarget
Subject: $subject
Mime-Version: 1.0
Content-Type: text/html; charset=gb2312                                     --- 指定邮件类型为html格式及编码为gb2312字符编码
!)

echo "$daemail" > msg.tmp
echo >>msg.tmp
cat test.html >>msg.tmp
echo  >> msg.tmp
cat msg.tmp |sendmail -t
rm -f msg.tmp


脚本2:

cat test.html |formail -I "From: root@srcb.com" -I "MIME-Version:1.0" -I "Content-type:text/html;charset=gb2312" -I "Subject:test html"|/usr/sbin/sendmail -oi user1@163.com user2@163.com

【注意】脚本2里面用到的formail命令有procmail-3.22-17.1.x86_64.rpm包提供,这是一个用来格式化邮件的工具。



总结:总的来说还是mutt比较好用一些,但是使用mutt的-e选项-e 'my_hdr content-type:text/html"'发送html邮件时总是不成功,不知道为什么!


附上Multipart Internet Mail Extensions (MIME) 的Content-Type一览 表

原:http://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html


Description of Data Content
Typical Filename Extensions


MIME type/subtype
    
Text and Text-Related Types   
HTML text data (RFC 1866)html htm text/html
Plain text: documents; program listingstxt c c++ pl cc h text/plain
Richtext (obsolete - replaced by text/enriched)  text/richtext
Structure enhanced text(etx?) text/x-setext
Enriched text markup (RFC 1896)  text/enriched
Tab-separated values (tabular)(tsv?) text/tab-separated-values
SGML documents (RFC 1874)  text/sgml
Speech synthesis data (MVP Solutions)talk text/x-speech
    
Document Stylesheet Types   
Cascading Stylesheetscss text/css
DSSSL-online stylesheets  application/dsssl (proposed)
    
Image Types   
GIFgif image/gif
X-Windows bitmap (b/w)xbm image/x-xbitmap
X-Windows pixelmap (8-bit color)xpm image/x-xpixmap
Portable Network Graphicspng image/x-png
Image Exchange Format (RFC 1314)ief image/ief
JPEGjpeg jpg jpe image/jpeg
TIFFtiff tif image/tiff
RGBrgb image/rgb
   image/x-rgb
Group III Fax (RFC 1494)g3f image/g3fax
X Windowdump formatxwd image/x-xwindowdump
Macintosh PICT formatpict image/x-pict
PPM (UNIX PPM package)ppm image/x-portable-pixmap
PGM (UNIX PPM package)pgm image/x-portable-graymap
PBM (UNIX PPM package)pbm image/x-portable-bitmap
PNM (UNIX PPM package)pnm image/x-portable-anymap
Microsoft Windows bitmapbmp image/x-ms-bmp
CMU rasterras image/x-cmu-raster
Kodak Photo-CDpcd image/x-photo-cd
Computer Graphics Metafilecgm image/cgm
North Am. Presentation Layer Protocol  image/naplps
CALS Type 1 or 2mil cal image/x-cals
Fractal Image Format (Iterated Systems)fif image/fif
QuickSilver active image (Micrografx)dsf image/x-mgx-dsf
CMX vector image (Corel)cmx image/x-cmx
Wavelet-compressed (Summus)wi image/wavelet
AutoCad Drawing (SoftSource)dwg image/vnd.dwg
   image/x-dwg
AutoCad DXF file (SoftSource)dxf image/vnd.dxf
   image/x-dxf
Simple Vector Format (SoftSource)svf image/vnd.svf
   also vector/x-svf
    
Audio/Voice/Music Related Types   
"basic"audio - 8-bit u-law PCMau snd audio/basic
Macintosh audio format (AIpple)aif aiff aifc audio/x-aiff
Microsoft audiowav audio/x-wav
MPEG audiompa abs mpega audio/x-mpeg
MPEG-2 audiomp2a mpa2 audio/x-mpeg-2
compressed speech (Echo Speech Corp.)es audio/echospeech
Toolvox speech audio (Voxware)vox audio/voxware
RapidTransit compressed audio (Fast Man)lcc application/fastman
Realaudio (Progressive Networks)ra ram application/x-pn-realaudio
NIFF music notation data format  application/vnd.music-niff
MIDI music datammid x-music/x-midi
Koan music data (SSeyo)skp application/vnd.koan
   application/x-koan
Speech synthesis data (MVP Solutions)talk text/x-speech
    
Video Types   
MPEG videompeg mpg mpe video/mpeg
MPEG-2 videompv2 mp2v video/mpeg-2
Macintosh Quicktimeqt mov video/quicktime
Microsoft videoavi video/x-msvideo
SGI Movie formatmovie video/x-sgi-movie
VDOlive streaming video (VDOnet)vdo video/vdo
Vivo streaming video (Vivo software)viv video/vnd.vivo
   video/vivo
Special HTTP/Web Application Types   
Proxy autoconfiguration (Netscape browsers)pac application/x-ns-proxy-autoconfig
See Chapter 6  application/x-www-form-urlencoded
See Chapter 9  application/x-www-local-exec
See Chapter 9 (Netscape extension)  multipart/x-mixed-replace
See Chapter 9 and Appendix B  multipart/form-data
Netscape Cooltalk chat data (Netscape)ice x-conference/x-cooltalk
Interactive chat (Ichat)  application/x-chat
    
Application Types   
    
Text-Related   
PostScriptai eps ps application/postscript
Microsoft Rich Text Formatrtf application/rtf
Adobe Acrobat PDFpdf application/pdf
   application/x-pdf
Maker Interchange Format (FrameMaker)mif application/vnd.mif
   application/x-mif
Troff documentt tr roff application/x-troff
Troff document with MAN macrosman application/x-troff-man
Troff document with ME macrosme application/x-troff-me
Troff document with MS macrosms application/x-troff-ms
LaTeX documentlatex application/x-latex
Tex/LateX documenttex application/x-tex
GNU TexInfo documenttexinfo texi application/x-texinfo
TeX dvi formatdvi application/x-dvi
MacWrite document?? application/macwriteii
MS word document?? application/msword
WordPerfect 5.1 document?? application/wordperfect5.1
SGML application (RFC 1874)  application/sgml
Office Document Architectureoda application/oda
Envoy Documentevy application/envoy
Wang Info. Tranfer Format (Wang)  application/wita
DEC Document Transfer Format (DEC)  application/dec-dx
IBM Document Content Architecture (IBM)  application/dca-rft
    
CommonGround Digital Paper (No Hands Software)  application/commonground
FrameMaker Documents (Frame)doc fm frm frame application/vnd.framemaker
   application/x-framemaker
Remote printing at arbitrary printers (RFC 1486)  application/remote-printing
    
Archive/Compressed Archives   
Gnu tar formatgtar application/x-gtar
4.3BSD tar formattar application/x-tar
POSIX tar formatustar application/x-ustar
Old CPIO formatbcpio application/x-bcpio
POSIX CPIO formatcpio application/x-cpio
UNIX sh shell archiveshar application/x-shar
DOS/PC - Pkzipped archivezip application/zip
Macintosh Binhexed archivehqx application/mac-binhex40
Macintosh Stuffit Archivesit sea application/x-stuffit
Fractal Image Formatfif application/fractals
Binary, UUencodedbin uu application/octet-stream
PC executableexe application/octet-stream
WAIS "sources"src wsrc application/x-wais-source
NCSA HDF data formathdf application/hdf
    
Downloadable Program/Scripts   
Javascript programjs ls mocha text/javascript
   application/x-javascript
VBScript program  text/vbscript
UNIX bourne shell programsh application/x-sh
UNIX c-shell programcsh application/x-csh
Perl programpl application/x-perl
Tcl (Tool Control Language) programtcl application/x-tcl
Atomicmail program scripts (obsolete)  application/atomicmail
Slate documents - executable enclosures (BBN)  application/slate
Undefined binary data (often executable progs)  application/octet-stream
RISC OS Executable programs (ANT Limited)  application/riscos
    
Animation/Multimedia   
Andrew Toolkit inset  application/andrew-inset
FutureSplash vector animation (FutureWave)spl application/futuresplash
mBED multimedia data (mBED)mbd application/mbedlet
Macromedia Shockwave (Macromedia)  application/x-director
Sizzler real-time video/animation  application/x-sprite
PowerMedia multimedia (RadMedia)rad application/x-rad-powermedia
    
Presentation    
PowerPoint presentation (Microsoft)ppz application/mspowerpoint
PointPlus presentation data (Net Scene)css application/x-pointplus
ASAP WordPower (Software Publishing Corp.)asp application/x-asap
Astound Web Player multimedia data (GoldDisk)asn application/astound
Special Embedded Object    
OLE script e.g. Visual Basic (Ncompass)axs application/x-olescript
OLE Object (Microsoft/NCompass)ods application/x-oleobject
OpenScape OLE/OCX objects (Business@Web)opp x-form/x-openscape
Visual Basic objects (Amara)wba application/x-webbasic
Specialized data entry forms (Alpha Software)frm application/x-alpha-form
client-server objects (Wayfarer Communications)wfx x-script/x-wfxclient
General Applications   
Undefined binary data (often executable progs)  application/octet-stream
CALS (U.S. D.O.D data format - RFC 1895)  application/cals-1840
Pointcast news data (Pointcast)pcn application/x-pcn
Excel spreadsheet (Microsoft)  application/vnd.ms-excel
   application/x-msexcel
   application/ms-excel
PowerPoint (Microsoft)ppt application/vnd.ms-powerpoint
   application/ms-powerpoint
Microsoft Project (Microsoft)  application/vnd.ms-project
Works data (Microsoft)  application/vnd.ms-works
MAPI data (Microsoft)  application/vnd.ms-tnef
Artgallery data (Microsoft)  application/vnd.artgalry
SourceView document (Dataware Electronics)svd application/vnd.svd
Truedoc (Bitstream)  application/vnd.truedoc
Net Install - software install (20/20 Software)ins application/x-net-install
Carbon Copy - remote control/access (Microcom)ccv application/ccv
Spreadsheets (Visual Components)vts workbook/formulaone
Cybercash digital money (Cybercash)  application/cybercash
Format for sending generic Macintosh files  application/applefile
Active message -- connect to active mail app.  application/activemessage
X.400 mail message body part (RFC 1494)  application/x400-bp
USENET news message id (RFC 1036)  application/news-message-id
USENET news message (RFC 1036)  application/news-transmission
    
Multipart Types (mostly email)   
Messages with multiple parts  multipart/mixed
Messages with multiple, alternative parts  multipart/alternative
Message with multiple, related parts  multipart/related
Multiple parts are digests  multipart/digest
For reporting of email status (admin.)  multipart/report
Order of parts does not matter  multipart/parallel
Macintosh file data  multipart/appledouble
Aggregate messages; descriptor as header  multipart/header-set
Container for voice-mail  multipart/voice-message
HTML FORM data (see Ch. 9 and App. B)  multipart/form-data
Infinite multiparts - See Chapter 9 (Netscape)  multipart/x-mixed-replace
    
Message Types (mostly email)   
MIME message  message/rfc822
Partial message  message/partial
Message containing external references  message/external-body
Message containing USENET news  message/news
HTTP message  message/http
    
2D/3D Data/Virtual Reality Types   
VRML data filewrl vrml x-world/x-vrml

(changing to model/vrml)

WIRL - VRML data (VREAM)vrw x-world/x-vream
Play3D 3d scene data (Play3D)p3d application/x-p3d
Viscape Interactive 3d world data (Superscape)svr x-world/x-svr
WebActive 3d data (Plastic Thought)wvr x-world/x-wvr
QuickDraw3D scene data (Apple)3dmf x-world/x-3dmf
    
Scientific/Math/CAD Types   
Chemical types -- to communicate information about chemical models  chemical/* (several subtypes)
Mathematica notebookma application/mathematica
Computational meshes for numerical simulationsmsh x-model/x-mesh

(evolving to model/mesh)

Vis5D 5-dimensional datav5d application/vis5d
IGES models -- CAD/CAM (CGM) dataigs application/iges

(evolving to model/iges?)

Autocad WHIP vector drawingsdwf drawing/x-dwf
    

Largely Platform-Specific Types
   

Silicon Graphics Specific Types
   
Showcase Presentationsshowcase slides sc sho show application/x-showcase
Insight Manual pagesins insight application/x-insight
Iris Annotator dataano application/x-annotator
Directory Viewerdir application/x-dirview
Software Licenselic application/x-enterlicense
Fax manager filefaxmgr application/x-fax-manager
Fax job data filefaxmgrjob application/x-fax-manager-job
IconBook dataicnbk application/x-iconbook
?wb application/x-inpview
Installable software in 'inst' formatinst application/x-install
Mail foldermail application/x-mailfolder
?pp ppages application/x-ppages
Data for printer (via lpr)sgi-lpr application/x-sgi-lpr
Software in 'tardist' formattardist application/x-tardist
Software in compressed 'tardist' formatztardist application/x-ztardist
WingZ spreadsheetwkz application/x-wingz
Open Inventor 3-D scenesiv graphics/x-inventor






  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值