- 浏览: 4754289 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
bzhao:
你也应该可以这样:(not tested)./rbtunnel ...
在Bash脚本中怎么关闭文件描述符? -
bzhao:
如果有A进程原代码情况下,通过如下调用,把他的子进程继承关闭则 ...
在Bash脚本中怎么关闭文件描述符? -
Master-Gao:
楼主咋没分析下源码呢?
我使用过的Linux命令之dirname - 截取给定路径的目录部分 -
jiedushi:
tail -F 就可以吧
Linux下实时跟踪log4j日志文件的bash脚本 - 增强了tail -f的功能 -
java_is_new:
新手学习了,就是不明白为一个网卡配多个ip有什么用
我使用过的Linux命令之ifconfig - 网络配置命令
我使用过的Linux命令之dot - 绘制DOT语言脚本描述的图形
本文链接:http://codingstandards.iteye.com/blog/840055 (转载请注明出处)
用途说明
Graphviz (Graph Visualization Software的缩写)是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形。它也提供了供其它软件使用的库。Graphviz是一个自由软件,其授权为Common Public License。其Mac版本曾经获得2004年的苹果设计奖。Graphviz包括很多命令行工具,dot命令是一个用来将生成的图形转换成多种输出格式的命令行工具,其输出格式包括PostScript,PDF,SVG,PNG,含注解的文本等等。neato命令用于spring model的生成(在Mac OS版本中称为energy minimized)。twopi命令用于放射状图形的生成。circo命令用于圆形图形的生成。fdp命令另一个用于生成无向图的工具。dotty命令一个用于可视化与修改图形的图形用户界面程序。lefty命令是一个可编程的(使用一种被EZ影响的语言[4])控件,它可以显示DOT图形,并允许用户用鼠标在图上执行操作。Lefty可以作为MVC模型的使用图形的GUI程序中的视图部分。 DOT语言是一种文本图形描述语言。它提供了一种简单的描述图形的方法,并且可以为人类和计算机程序所理解。DOT语言文件通常是具有.gv或是.dot的文件扩展名。本文将主要介绍从源代码安装Graphviz工具以及dot命令的使用方式。
常用参数
格式:dot -T<type> -o<outfile> <infile.dot>
输入文件是<infile.dot>,生成的格式由<type>指定,生成的文件是<outfile>。
其中-T<type>包括:
-Tps (PostScript),
-Tsvg -Tsvgz (Structured Vector Graphics),
-Tfig (XFIG graphics),
-Tmif (FrameMaker graphics),
-Thpgl (HP pen plotters),
-Tpcl (Laserjet printers),
-Tpng -Tgif (bitmap graphics),
-Tdia (GTK+ based diagrams),
-Timap (imagemap files for httpd servers for each node or edge that has a non-null "href" attribute.),
-Tcmapx (client-side imagemap for use in html and xhtml).
下面简单介绍下DOT语言的语法:
无向图
:在最简单的应用中,DOT语言可以用来描述一张无向图。无向图显示了对象间最简单的关系,例如人之间的友谊。使用关键字graph开始一张无向图的定义,并用大括号包含要描述的节点,双连字号(--)被用来描述节点间的关系。另外,一行的末尾需要加上分号(;)。
graph graphname {
a -- b -- c;
b -- d;
}
有向图
:类似于无向图,DOT语言也可以用来描述一张有向图,类似于流程图和树状图。其语法与无向图相似,但要在图的最开始使用关键字'digraph',并用箭头(->)表示节点直接的关系。
digraph graphname {
a -> b -> c;
b -> d;
}
属性
:DOT语言中,可以对节点和边添加不同的属性。这些属性可以控制节点和边的显示样式,例如颜色,形状和线形。可以在语句和句尾的分号间放置一对方括号,并在其中中放置一个或多个属性-值对。多个属性可以被逗号和空格(, )分开。节点的属性被放置在只包含节点名称的表达式后。
graph graphname {
// label属性可以改变节点的显示名称
a [label="Foo"];
// 节点形状被改变了
b [shape=box];
// a-b边和b-c边有相同的属性
a -- b -- c [color=blue];
b -- d [style=dotted];
}
注释
:DOT语言支持C语言与C++风格的单行与多行注释。另外,也支持Shell脚本风格的以#开头的注释。
// 单行注释
/* 多行
注
释 */
# 如此的行也会被忽略。
使用示例
示例一 从源代码安装Graphviz
[root@jfht setup]# wget "http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.26.3.tar.gz"
--2010-12-12 09:10:26-- http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.26.3.tar.gz
正在解析主机 www.graphviz.org... 192.20.225.20
Connecting to www.graphviz.org|192.20.225.20|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:17092429 (16M) [application/x-gzip]
Saving to: `graphviz-2.26.3.tar.gz'
100%[==========================================================================================>] 17,092,429 174K/s in 1m 44s
2010-12-12 09:12:10 (161 KB/s) - `graphviz-2.26.3.tar.gz' saved [17092429/17092429]
[root@jfht setup]# tar zxf graphviz-2.26.3.tar.gz
[root@jfht setup]# cd graphviz-2.26.3
[root@jfht graphviz-2.26.3]# ls
aclocal.m4 builddate.h config.h.in configure.old dot.demo graphviz.sln INSTALL makearch plugin
ast_common.h ChangeLog config.h.old contrib Doxyfile graphviz.spec INSTALL.old Makeargs README
ast_common.h.in cmd config.iffe COPYING Doxyfile.in graphviz.spec.in lib Makefile.am rtest
AUTHORS compat_getopt.h Config.mk.old cpl1.0.txt features graphviz.vcproj libltdl Makefile.in share
autogen.sh compat.h configure debian graphs graphviz_version.h m4 Makefile.old tclpkg
awk config configure.ac doc graphviz.7 iffe macosx NEWS windows
[root@jfht graphviz-2.26.3]# ./configure --prefix=/usr
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
省略输出
----------------------------------------------------------------
graphviz-2.26.3 will be compiled with the following:
options:
cgraph: No (disabled by default - experimental)
digcola: Yes
expat: No (missing library)
fontconfig: No (missing fontconfig-config)
freetype: No (missing freetype-config)
glut: No (missing GL/glut.h)
gts: No (gts library not available)
ipsepcola: No (disabled by default - C++ portability issues)
ltdl: Yes
ortho: No (disabled by default - experimental)
png: No (missing png.h)
jpeg: No (missing header)
sfdp: Yes
shared: Yes
static: No (disabled by default)
commands:
dot: Yes (always enabled)
neato: Yes (always enabled)
fdp: Yes (always enabled)
circo: Yes (always enabled)
twopi: Yes (always enabled)
gvpr: Yes (always enabled)
lefty: No (missing Xaw headers)
smyrna: No (disabled by default - experimental)
plugin libraries:
dot_layout: Yes (always enabled)
neato_layout: Yes (always enabled)
core: Yes (always enabled)
devil: No (missing library)
gd: Yes (internal)
gdiplus: No (disabled by default - Windows only)
gdk_pixbuf: No (gdk_pixbuf library not available)
ghostscript: No (missing headers)
glitz: No (disabled by default - incomplete)
gtk: No (gtk library not available)
lasi: No (lasi library not available)
ming: No (disabled by default - incomplete)
pangocairo: No (pangocairo library not available)
quartz: No (disabled by default - Mac only)
rsvg: No (rsvg library not available)
visio: No (disabled by default - experimental)
xlib: No (disabled or unavailable)
language extensions:
gv_sharp: No (swig not available)
gv_guile: No (swig not available)
gv_io: No (disabled by default - no swig support yet)
gv_java: No (swig not available)
gv_lua: No (swig not available)
gv_ocaml: No (swig not available)
gv_perl: No (swig not available)
gv_php: No (swig not available)
gv_python: No (swig not available)
gv_python23: No (disabled by default - for multiversion installs)
gv_python24: No (disabled by default - for multiversion installs)
gv_python25: No (disabled by default - for multiversion installs)
gv_python26: No (disabled by default - for multiversion installs)
gv_R: No (swig not available)
gv_ruby: No (swig not available)
gv_tcl: No (tcl not available)
tcldot: No (tcl not available)
tclpathplan: No (tcl not available)
gdtclft: No (tcl not available)
tkspline: No (tk not available)
[root@jfht graphviz-2.26.3]#
[root@jfht graphviz-2.26.3]# make && make install
test -z "/usr/share/graphviz/doc/html" || /bin/mkdir -p "/usr/share/graphviz/doc/html"
test -z "/usr/share/man/man7" || /bin/mkdir -p "/usr/share/man/man7"
/usr/bin/install -c -m 644 'graphviz.7' '/usr/share/man/man7/graphviz.7'
test -z "/usr/include/graphviz" || /bin/mkdir -p "/usr/include/graphviz"
/usr/bin/install -c -m 644 'graphviz_version.h' '/usr/include/graphviz/graphviz_version.h'
test -z "/usr/share/graphviz/doc" || /bin/mkdir -p "/usr/share/graphviz/doc"
/usr/bin/install -c -m 644 'AUTHORS' '/usr/share/graphviz/doc/AUTHORS'
/usr/bin/install -c -m 644 'COPYING' '/usr/share/graphviz/doc/COPYING'
/usr/bin/install -c -m 644 'ChangeLog' '/usr/share/graphviz/doc/ChangeLog'
/usr/bin/install -c -m 644 'NEWS' '/usr/share/graphviz/doc/NEWS'
/usr/bin/install -c -m 644 'cpl1.0.txt' '/usr/share/graphviz/doc/cpl1.0.txt'
make[2]: Leaving directory `/root/setup/graphviz-2.26.3'
make[1]: Leaving directory `/root/setup/graphviz-2.26.3'
You have new mail in /var/spool/mail/root
[root@jfht graphviz-2.26.3]#
示例二 操作系统的进程状态转换图
下面的例子来自http://www.graphviz.org/Gallery/undirected/process.html 。
[root@jfht ~]# cat process.gv
graph G {
run -- intr;
intr -- runbl;
runbl -- run;
run -- kernel;
kernel -- zombie;
kernel -- sleep;
kernel -- runmem;
sleep -- swap;
swap -- runswap;
runswap -- new;
runswap -- runmem;
new -- runmem;
sleep -- runmem;
}
[root@jfht ~]# dot -Tpng -oprocess.png process.gv
Format: "png" not recognized. Use one of: canon cmap cmapx cmapx_np dot eps fig gd gd2 gif gv imap imap_np ismap plain plain-ext ps ps2 svg svgz tk vml vmlz wbmp xdot
[root@jfht ~]# dot -Tgif -oprocess.gif process.gv
[root@jfht ~]# dot -Tsvg -oprocess.svg process.gv
[root@jfht ~]#
示例三 中文支持
要想在dot文件中使用中文,必须要安装有fontconfig-devel和freetype-devel。如示例一所示的安装中就没有这两项,
fontconfig: No (missing fontconfig-config)
freetype: No (missing freetype-config)
先得安装上,先把Linux安装盘挂载上。安装步骤如下
[root@jfht software]# find . -name "*fontconfig*"
./Server/fontconfig-devel-2.4.1-7.el5.i386.rpm
./Server/fontconfig-2.4.1-7.el5.i386.rpm
[root@jfht software]#
[root@jfht software]#
[root@jfht software]# rpm -qa | grep fontconfig
fontconfig-2.4.1-7.el5
[root@jfht software]# rpm -ivh ./Server/fontconfig-devel-2.4.1-7.el5.i386.rpm
warning: ./Server/fontconfig-devel-2.4.1-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
error: Failed dependencies:
freetype-devel >= 2.1.4 is needed by fontconfig-devel-2.4.1-7.el5.i386
[root@jfht software]# find . -name "freetype-devel*rpm"
./Server/freetype-devel-2.2.1-21.el5_3.i386.rpm
[root@jfht software]# rpm -ivh ./Server/freetype-devel-2.2.1-21.el5_3.i386.rpm ./Server/fontconfig-devel-2.4.1-7.el5.i386.rpm
warning: ./Server/freetype-devel-2.2.1-21.el5_3.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:freetype-devel ########################################### [ 50%]
2:fontconfig-devel ########################################### [100%]
[root@jfht software]#
安装好这两个rpm包之后,再到graphviz源代码目录,执行
./configure --prefix=/usr
make && make install
这样dot就可以支持中文了。首先我们编写一个简单的dot文件。
[root@jfht ~]# cat cn.gv
graph G {
中文 -- 英文
}
[root@jfht ~]# dot -Tgif -ocn.gif cn.gv
Error: Invalid 2-byte UTF8 found in input. Perhaps "-Gcharset=latin1" is needed?
要注意的是:dot不支持gbk编码的中文,但可以支持UTF8的中文,所以先把它转换成UTF8编码的。
[root@jfht ~]# iconv -f GBK -t UTF8 cn.gv >cn8.gv
[root@jfht ~]# dot -Tgif -ocn8.gif cn8.gv
[root@jfht ~]#
示例四 改变中文字体
默认的中文字体是宋体的,如果想改成仿宋、黑体、幼圆或别的字体,在Linux下可能没有,那么可以在Windows下找到相应的字体文件,上传的LInux上使用。步骤如下:
到C:\Windows\Fonts下找到simyou.ttf,用sftp上传到Linux下的/usr/share/fonts/chinese/TrueType目录。
[root@jfht ~]# cd /usr/share/fonts/chinese/TrueType
[root@jfht TrueType]# mkfontscale
[root@jfht TrueType]# mkfontdir
[root@jfht TrueType]# fc-cache
[root@jfht TrueType]# cat fonts.dir
注意下面内容中粗体部分。
62
fangsong.ttf -misc-fangsong_gb2312
-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
fangsong.ttf -misc-fangsong_gb2312-medium-r-normal--0-0-0-0-p-0-iso10646-1
simhei.ttf -misc-simhei
-medium-r-normal--0-0-0-0-p-0-cns11643-1
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-cns11643-2
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-cns11643-3
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-gb18030.2000-0
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-iso10646-1
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-jisx0208.1983-0
simhei.ttf -misc-simhei-medium-r-normal--0-0-0-0-p-0-jisx0208.1990-0
simsun.ttc -misc-simsun
-medium-r-normal--0-0-0-0-p-0-ascii-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-cns11643-1
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-cns11643-2
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-cns11643-3
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-gb18030.2000-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso8859-1
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-jisx0208.1983-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-jisx0208.1990-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-koi8-r
simyou.ttf -misc-youyuan
-medium-r-normal--0-0-0-0-m-0-cns11643-2
simyou.ttf -misc-youyuan-medium-r-normal--0-0-0-0-m-0-gb2312.1980-0
simyou.ttf -misc-youyuan-medium-r-normal--0-0-0-0-m-0-iso10646-1
stcaiyun.ttf -misc-stcaiyun
-medium-r-normal--0-0-0-0-p-0-ascii-0
stcaiyun.ttf -misc-stcaiyun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
stcaiyun.ttf -misc-stcaiyun-medium-r-normal--0-0-0-0-p-0-iso10646-1
stcaiyun.ttf -misc-stcaiyun-medium-r-normal--0-0-0-0-p-0-iso8859-1
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-ascii-0
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-big5-0
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-big5.eten-0
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-cns11643-1
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-cns11643-2
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso10646-1
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-10
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-13
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-15
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-16
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-1
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-2
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-3
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-4
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-iso8859-9
ukai.ttf -misc-ar pl zenkai uni-medium-r-normal--0-0-0-0-p-0-suneu-greek
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-ascii-0
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-big5-0
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-big5.eten-0
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-cns11643-1
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-cns11643-2
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso10646-1
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-10
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-13
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-15
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-16
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-1
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-2
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-3
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-4
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-iso8859-9
uming.ttf -misc-ar pl shanheisun uni-medium-r-normal--0-0-0-0-p-0-suneu-greek
[root@jfht TrueType]#
上面粗体标出的部分就是中文字体的名称,比如 fangsong_gb2312、 simhei、 simsun、 youyuan、 stcaiyun。
[root@jfht ~]# dot -Nfontname=fangsong_gb2312 -Tgif -ocn8_fangsong_gb2312.gif cn8.gv
[root@jfht ~]# dot -Nfontname=simhei -Tgif -ocn8_simhei.gif cn8.gv
[root@jfht ~]# dot -Nfontname=simsun -Tgif -ocn8_simsun.gif cn8.gv
[root@jfht ~]# dot -Nfontname=youyuan -Tgif -ocn8_youyuan.gif cn8.gv
[root@jfht ~]# dot -Nfontname=stcaiyun -Tgif -ocn8_stcaiyun.gif cn8.gv
[root@jfht ~]# ls -l cn8*
-rw-r--r-- 1 root root 922 12-12 15:58 cn8_fangsong_gb2312.gif
-rw-r--r-- 1 root root 902 12-12 15:38 cn8.gif
-rw-r--r-- 1 root root 35 12-12 15:35 cn8.gv
-rw-r--r-- 1 root root 926 12-12 16:00 cn8_simhei.gif
-rw-r--r-- 1 root root 866 12-12 16:01 cn8_simsun.gif
-rw-r--r-- 1 root root 974 12-12 16:03 cn8_stcaiyun.gif
-rw-r--r-- 1 root root 876 12-12 16:02 cn8_youyuan.gif
[root@jfht ~]#
问题思考
相关资料
【1】维基百科 Graphviz
【2】维基百科 DOT语言
【3】啄木鸟社区 Graphviz
【4】age的个人空间 用Dot绘图
【5】海贼’blog linux dot 绘图
【6】daxuxu graphviz dot简介
【7】openstudy 英文版linux安装中文字体
发表评论
-
在Linux用tar归档压缩文件时忽略某些文件和目录
2013-02-01 10:19 17053在Linux下,常用tar对文 ... -
使用nmap扫描服务器端口的一次操作
2012-11-01 17:00 15139使用nmap扫描服务器端口的一次操作 本文来自:http ... -
我使用过的Linux命令之wget - ooo
2011-09-14 13:10 0我使用过的Linux命令之wg ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:53 9149简明 Vim 练级攻略 http://coolshell.c ... -
推荐一篇学习Vim使用的好文:酷壳 - 简明 Vim 练级攻略
2011-09-09 12:49 1简明 Vim 练级攻略 http://coolshell.c ... -
我使用过的Linux命令之:(冒号) - 啥也不做(除了……)
2011-08-29 13:18 12101我使用过的Linux命令之: ... -
我使用过的Linux命令之date - 显示、修改系统日期时间
2011-08-25 09:21 41985我使用过的Linux命令之da ... -
我使用过的Linux命令之declare - 声明shell变量(不知道没关系、知道了就更好的内建命令)
2011-08-16 09:22 21831我使用过的Linux命令之declare - 声明shell变 ... -
我使用过的Linux命令之alias - 设置命令的别名,让 Linux 命令更简练
2011-08-11 09:31 28829我使用过的Linux命令之alias - 设置命令的别名,让 ... -
我使用过的Linux命令之ar - 创建静态库.a文件
2011-08-08 10:40 51934我使用过的Linux命令之ar - 创建静态库.a文件 本 ... -
我使用过的Linux命令之crontab - 设置例行任务(类似于Windows中的任务计划)
2011-08-04 22:26 9752我使用过的Linux命令之crontab - 设置例行任务(类 ... -
我使用过的Linux命令之chmod - 改变文件/目录的访问权限
2011-08-03 21:33 10706我使用过的Linux命令之chmod - 改变文件/目录的访问 ... -
我使用过的Linux命令之export - 设置或显示环境变量
2011-08-02 19:55 25441我使用过的Linux命令之export - 设置或显示环境变量 ... -
我使用过的Linux命令之wc - 统计文件行数、单词数或字节数
2011-07-26 10:50 29018我使用过的Linux命令之wc - 统计文件行数、单词数或字节 ... -
我使用过的Linux命令之groupdel - 删除群组
2011-07-22 22:13 9693我使用过的Linux命令之gr ... -
我使用过的Linux命令之ifconfig - 网络配置命令
2011-07-21 20:43 60552我使用过的Linux命令之ifconfig - 网络配置命令 ... -
我使用过的Linux命令之ll - 列出文件/目录的详细信息
2011-07-20 21:22 7209我使用过的Linux命令之ll ... -
我使用过的Linux命令之mkdir - 创建目录
2011-07-20 20:58 13686我使用过的Linux命令之mkdir - 创建目录 本文链 ... -
我使用过的Linux命令之perror - 解释错误代码
2011-07-18 20:29 25081我使用过的Linux命令之perror - 解释错误代码 ... -
我使用过的Linux命令之ping - 测试与目标主机的连通性
2011-07-16 10:46 26615我使用过的Linux命令之ping - 测试与目标主机的连通性 ...
相关推荐
基于springboot+Javaweb的二手图书交易系统源码数据库文档.zip
Linux课程设计.doc
课程考试资源描述 本资源是为应对各类课程考试而精心准备的综合性学习包。它包含了多门学科的考试指南、历年真题、模拟试题以及详细的答案解析。这些资源旨在帮助学生系统复习课程内容,理解考试要点,提高解题技巧,从而在考试中取得优异成绩。 资源中不仅包含了基础的考试资料,还特别加入了考试技巧讲解和备考策略分析。学生可以通过这些资源了解不同题型的解题方法和思路,学会如何在有限的时间内高效答题。此外,还有针对弱项科目和难点的专项训练,帮助学生攻克学习瓶颈。 为了确保资源的时效性和准确性,我们会定期更新考试资料和模拟试题,及时反映最新的考试动态和趋势。同时,也提供了在线交流平台,方便学生之间互相讨论、分享学习心得。 项目源码示例(简化版,Python) 以下是一个简单的Python脚本示例,用于生成包含选择题和答案的模拟试题: python import random # 定义选择题题库 questions = [ {"question": "Python的创始人是谁?", "options": ["A. 林纳斯·托瓦兹", "B. 巴纳姆", "C. 比尔·盖茨", "D.
基于 MySQL+Django 实现校园食堂点餐系统。 主要环境: PowerDesigner MySQL Workbench 8.0 CE Python 3.8 Django 3.2.8 BootStrap 3.3.7 Django-simpleui
基于SpringBoot的同城宠物照看系统源码数据库文档.zip
GEE训练教程
基于springboot+Web的心理健康交流系统源码数据库文档.zip
微信小程序 kotlin 实践微信插件助手, 目前支持抢红包(支持微信最新版本 7.0.0及7.0.3).zip
N32G45X运放电路检测电压
梦幻西游道人是梦幻西游里面的一个NPC,主要是刷全服最实惠的高级兽决和其他很好用的比较贵的东西,在长安城、傲来国、长寿村中的任意一个场景出现,一般会出现30分钟,不过东西一般都被秒刷。 梦幻西游道人出现时间解析如下: 1.梦幻西游道人出现时间一直都保持着一年出现两次的规律,即2、3月份的元宵节期间来一次,9月份的教师节期间出现一次。 2.云游道人每个整点(0:00至7:00不出现)会在长安城、傲来国、长寿村中的任意一个场景出现,每次出现后停留时间为30分钟。
tables-3.7.0-cp38-cp38-win_amd64.whl
基于springboot旧物回收管理系统源码数据库文档.zip
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 本文档介绍了MariaDB 10.1的集群部署,至少三台机器做成集群,每台可以同时提供读和写,感兴趣的小伙伴们可以参考一下
内容概要:本文档全面介绍了JavaScript作为一种轻量级的、解释型的语言及其在前端开发中的广泛应用。从JavaScript的基本概念出发,详尽讲解了基础语法(如变量、数据类型、运算符、流程控制)、函数和闭包、对象和原型、DOM操作(如获取、修改、添加和删除元素)、事件处理(如事件监听器、事件对象)、AJAX与Fetch API、ES6+的新特性(如箭头函数、模板字符串、解构赋值)以及前端框架和库(React、Vue、Angular)。除此之外,文章还涉及了代码优化技巧(如减少DOM操作、选择适当的算法和数据结构、使用工具提升代码性能),并对JavaScript的应用场景和发展趋势进行了展望。 适用人群:适用于初学者或具有少量编程经验的学习者,旨在帮助他们系统掌握JavaScript基础知识和前沿技术。 使用场景及目标:通过本教程的学习,读者不仅可以学会基本语法,还能理解并掌握高级概念和技术,如DOM操纵、事件处理机制、异步编程及最新的ECMAScript规范。这不仅有助于改善用户体验、增强网站互动性和响应速度,也能有效提升自身的编码水平和项目开发能力。 其他说明:此文档不仅涵盖了JavaScript的传统功能,还有现代前端技术和最佳实践指导,确保读者能够紧跟行业发展步伐,成为合格甚至优秀的Web开发人员。
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过严格测试运行成功才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
基于springboot高考志愿智能推荐系统源码数据库文档.zip
经典-FPGA时序约束教程
mcu交互实验整体文件
Collins COBUILD (CN).mdx
自定义springboot starter