科学网

 找回密码
  注册

tag 标签: 命令

相关帖子

版块 作者 回复/查看 最后发表

没有相关内容

相关日志

matlab(mac) 查找toolbox
Daisy111 2014-9-25 10:04
command窗口输命令 1. 拟合 : cftool 2. 3. 遗传算法:gatool
个人分类: matlab学习笔记|0 个评论
Linux中time命令输出的Real time, User time and Sys time
bigdataage 2014-4-6 19:20
Linux中time命令输出的Real time, User time and Sys time 在运行的程序之前加 time 最后得出三个时间 real、 user、 sys, real是程序的实际运行时间,sys是内核态的时间,user是用户态的时间,单核情况,real远远大于user和sys之和。 real,从程序开始到程序执行结束时所消耗的时间,包括CPU的用时和所有延迟程序执行的因素的总和。CPU用时被划分为user和sys两块。user表示程序本身,以及它所调用的库中的子 例程 使用的时间。sys是由程序直接或间接调用的 系统调用 执行的时间。 real=cpu用时+其他因素时间 cpu 用时=user+sys 所以: real user + sys ( 单核情况 ) time命令结果有三行组成:real、user和sys。CPU用时被划分为user和sys两块。 real值 表示从程序开始到程序执行结束时所消耗的时间,包括CPU的用时 。 user值表示程序本身,以及它所调用的库中的子例程使用的时间 。 sys是由程序直接或间接调用的系统调用执行的时间 。 在单处理器上,real值和整个CPU用时之差,也就是real - ( user + sys )是所有延迟程序执行的因素的总和。 在SMP上,这个值近似为real * number_of_processors - ( user + sys )。这些因素包括: •调入程序文本和数据的IO操作 •获取程序实际使用内存的IO操作 •由其它程序消耗的CPU用时 •由操作系统消耗的CPU用时 * Real 是时钟时间,程序从开始至结束的总时间。他包括期间其他进程所占用的时间片和进程被阻塞的时间(如IO等待的时间) * User 被测试程序在用户模式下所花的CPU时间。他是进程执行的正真的CPU时间。其他进程调度的时间片以及阻塞(如IO)的时间不包含在内。 * Sys 是进程在内核中所花费的CPU时间。他表示进程在内核调用中所花的CPU时间,而程序的库调用仍然运行在用户空间下。 User+Sys表示程序所执行的CPU时间(不包括IO以及其他进程的CPU时间). Real指的是实际经过的时间,User和Sys指的是该进程使用的CPU时间。 1. Real是墙上时间(wall clock time),也就是进程从开始到结束所用的实际时间。这个时间包括其他进程使用的时间片和进程阻塞的时间(比如等待I/O完成)。 2. User指进程执行用户态代码(核心之外)所使用的时间。这是执行此进程所消耗的实际CPU时间,其他进程和此进程阻塞的时间并不包括在内。 3. Sys指进程在内核态消耗的CPU时间,即在内核执行系统调用所使用的CPU时间。 那么,为什么进程开始到结束所经过的时间会比进程所消耗的用户时间和系统时间(user time + sys time)小呢? User+Sys为进程所使用的实际CPU时间。注意,如果有多个线程,User+Sys的时间有可能大于Real时间。同时,User和Sys时间包括子进程所使用的时间。 time命令的输出数据是由几个不同的系统调用得来的。User time和Sys time从ait(2)或times(2)系统调用(依赖不同的系统)得来。Real time是由gettimeofday(2)中结束时间和起始时间相减得到。不同的操作系统还可能有其他的信息,比如time可以记录上下文切换的次数。 在多处理器的系统上,一个进程如果有多个线程或者有多个子进程可能导致Real time比CPU time(User + Sys time)要小,这是因为不同的线程或进程可以并行执行。 内容综合整理自: http://blog.csdn.net/nevasun/article/details/7004355 http://zhidao.baidu.com/link?url=m9-PUjLTV7J4-ZTOsbfYwAxCv5eQz2S5L4pgqZ3sPjFnQ-y8f2mEZUHC8OnDsUcsqRf53hwBV2BaZvkIDc1k5K
18092 次阅读|0 个评论
[转载]sed命令介绍(二)
plgongcat 2013-10-9 08:59
1 . Sed简介 sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下介绍的是Gnu版本的Sed 3.02 。 2 . 定址 可以通过定址来定位你所希望编辑的行,该地址用数字构成,用逗号分隔的两个行数表示以这两行为起止的行的范围(包括行数表示的那两行)。如 1 , 3 表示 1 , 2 , 3 行,美元符号($)表示最后一行。范围可以通过数据,正则表达式或者二者结合的方式确定 。 3 . Sed命令 调用sed命令有两种形式: * sed 'command' file(s) * sed -f scriptfile file(s) a\ 在当前行后面加入一行文本。 b lable 分支到脚本中带有标记的地方,如果分支不存在则分支到脚本的末尾。 c\ 用新的文本改变本行的文本。 d 从模板块(Pattern space)位置删除行。 D 删除模板块的第一行。 i\ 在当前行上面插入文本。 h 拷贝模板块的内容到内存中的缓冲区。 H 追加模板块的内容到内存中的缓冲区 g 获得内存缓冲区的内容,并替代当前模板块中的文本。 G 获得内存缓冲区的内容,并追加到当前模板块文本的后面。 l 列表不能打印字符的清单。 n 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。 N 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。 p 打印模板块的行。 P(大写) 打印模板块的第一行。 q 退出Sed。 r file 从file中读行。 t label if 分支,从最后一行开始,条件一旦满足或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 T label 错误分支,从最后一行开始,一旦发生错误或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 w file 写并追加模板块到file末尾。 W file 写并追加模板块的第一行到file末尾。 ! 表示后面的命令对所有没有被选定的行发生作用。 s/re/string 用string替换正则表达式re。 = 打印当前行号码。 # 把注释扩展到下一个换行符以前。 以下的是替换标记 * g表示行内全面替换。 * p表示打印行。 * w表示把行写入一个文件。 * x表示互换模板块中的文本和缓冲区中的文本。 * y表示把一个字符翻译为另外的字符(但是不用于正则表达式) 4 . 选项 -e command, --expression=command 允许多台编辑。 -h, --help 打印帮助,并显示bug列表的地址。 -n, --quiet, --silent 取消默认输出。 -f, --filer=script-file 引导sed脚本文件名。 -V, --version 打印版本和版权信息。 5 . 元字符集^ 锚定行的开始 如:/^sed/匹配所有以sed开头的行。 $ 锚定行的结束 如:/sed$/匹配所有以sed结尾的行。 . 匹配一个非换行符的字符 如:/s.d/匹配s后接一个任意字符,然后是d。 * 匹配零或多个字符 如: /*sed/匹配所有模板是一个或多个空格后紧跟sed的行。 ed/匹配sed和Sed。 匹配一个不在指定范围内的字符,如:/ ed/匹配不包含A-R和T-Z的一个字母开头,紧跟ed的行。 \(..\) 保存匹配的字符,如s/\(love\)able/\1rs,loveable被替换成lovers。 保存搜索字符用来替换其他字符,如s/love/****/ ,love这成**love**。 \ 锚定单词的开始,如:/\love/匹配包含以love开头的单词的行。 \ 锚定单词的结束,如/love\/匹配包含以love结尾的单词的行。 x\{m\} 重复字符x,m次,如:/ 0 \{ 5 \}/匹配包含 5 个o的行。 x\{m,\} 重复字符x,至少m次,如:/o\{ 5 ,\}/匹配至少有 5 个o的行。 x\{m,n\} 重复字符x,至少m次,不多于n次,如:/o\{ 5 , 10 \}/匹配 5 -- 10 个o的行。 6 . 实例 删除:d命令 * $ sed '2d' example-----删除example文件的第二行。 * $ sed '2,$d' example-----删除example文件的第二行到末尾所有行。 * $ sed '$d' example-----删除example文件的最后一行。 * $ sed '/test/' d example-----删除example文件所有包含test的行。 替换:s命令 * $ sed 's/test/mytest/g' example-----在整行范围内把test替换为mytest。如果没有g标记,则只有每行第一个匹配的test被替换成mytest。 * $ sed -n 's/^test/mytest/p' example-----(-n)选项和p标志一起使用表示只打印那些发生替换的行。也就是说,如果某一行开头的test被替换成mytest,就打印它。 * $ sed 's/^192.168.0.1/localhost/' example-----符号表示替换换字符串中被找到的部份。所有以 192.168 . 0.1 开头的行都会被替换成它自已加 localhost,变成 192.168 . 0 .1localhost。 * $ sed -n 's/\(love\)able/\1rs/p' example-----love被标记为 1 ,所有loveable会被替换成lovers,而且替换的行会被打印出来。 * $ sed 's#10#100#g' example-----不论什么字符,紧跟着s命令的都被认为是新的分隔符,所以,“#”在这里是分隔符,代替了默认的“/”分隔符。表示把所有 10 替换成 100 。 选定行的范围:逗号 * $ sed -n '/test/,/check/p' example-----所有在模板test和check所确定的范围内的行都被打印。 * $ sed -n '5,/^test/p' example-----打印从第五行开始到第一个包含以test开始的行之间的所有行。 * $ sed '/test/,/check/s/$/sed test/' example-----对于模板test和west之间的行,每行的末尾用字符串sed test替换。 多点编辑:e命令 * $ sed -e '1,5d' -e 's/test/check/' example-----(-e)选项允许在同一行里执行多条命令。如例子所示,第一条命令删除 1 至 5 行,第二条命令用check替换test。命令的执 行顺序对结果有影响。如果两个命令都是替换命令,那么第一个替换命令将影响第二个替换命令的结果。 * $ sed --expression= 's/test/check/' --expression= '/love/d' example-----一个比-e更好的命令是--expression。它能给sed表达式赋值。 从文件读入:r命令 * $ sed '/test/r file' example-----file里的内容被读进来,显示在与test匹配的行后面,如果匹配多行,则file的内容将显示在所有匹配行的下面。 写入文件:w命令 * $ sed -n '/test/w file' example-----在example中所有包含test的行都被写入file里。 追加命令:a命令 * $ sed '/^test/a\\---this is a example' example----- 'this is a example' 被追加到以test开头的行后面,sed要求命令a后面有一个反斜杠。 插入:i命令 $ sed '/test/i\\ new line -------------------------' example 如果test被匹配,则把反斜杠后面的文本插入到匹配行的前面。 下一个:n命令 * $ sed '/test/{ n; s/aa/bb/; }' example-----如果test被匹配,则移动到匹配行的下一行,替换这一行的aa,变为bb,并打印该行,然后继续。 变形:y命令 * $ sed '1,10y/abcde/ABCDE/' example-----把 1 -- 10 行内所有abcde转变为大写,注意,正则表达式元字符不能使用这个命令。 退出:q命令 * $ sed '10q' example-----打印完第 10 行后,退出sed。 保持和获取:h命令和G命令 * $ sed -e '/test/h' -e '$G example-----在sed处理文件的时候,每一行都被保存在一个叫模式空间的临时缓冲区中,除非行被删除或者输出被取消,否则所有被处理的行都将 打印在屏幕上。接着模式空间被清空,并存入新的一行等待处理。在这个例子里,匹配test的行被找到后,将存入模式空间,h命令将其复制并存入一个称为保 持缓存区的特殊缓冲区内。第二条语句的意思是,当到达最后一行后,G命令取出保持缓冲区的行,然后把它放回模式空间中,且追加到现在已经存在于模式空间中 的行的末尾。在这个例子中就是追加到最后一行。简单来说,任何包含test的行都被复制并追加到该文件的末尾。 保持和互换:h命令和x命令 * $ sed -e '/test/h' -e '/check/x' example -----互换模式空间和保持缓冲区的内容。也就是把包含test与check的行互换。 7 . 脚本 Sed脚本是一个sed的命令清单,启动Sed时以-f选项引导脚本文件名。Sed对于脚本中输入的命令非常挑剔,在命令的末尾不能有任何空白或文本,如果在一行中有多个命令,要用分号分隔。以#开头的行为注释行,且不能跨行。 转自:http://www.cnblogs.com/edwardlost/archive/2010/09/17/1829145.html
个人分类: unix|1249 次阅读|0 个评论
[转载]sed命令详解(1)
plgongcat 2013-10-9 08:54
sed命令详解 转载: http://blog.chinaunix.net/u/22677/showart_1076318.html 1.简介 sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。 sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。 2.定址 定址用于决定对哪些行进行编辑。地址的形式可以是数字、正则表达式、或二者的结合。如果没有指定地址,sed将处理输入文件的所有行。 地址是一个数字,则表示行号;是“$符号,则表示最后一行。例如: sed - n '3p' datafile 只打印第三行 只显示指定行范围的文件内容,例如: # 只查看文件的第100行到第200行 sed -n '100,200p' mysql_slow_query.log 地址是逗号分隔的,那么需要处理的地址是这两行之间的范围(包括这两行在内)。范围可以用数字、正则表达式、或二者的组合表示。例如: sed '2,5d' datafile #删除第二到第五行 sed '/My/,/You/d' datafile #删除包含 My 的 行到包含 You 的 行之间的行 sed '/My/,10d' datafile #删除包含 My 的 行到第十行的内容 3.命令与选项 sed命令告诉sed如何处理由地址指定的各输入行,如果没有指定地址则处理所有的输入行。 3.1 sed命令 命令 功能 a\ 在当前行后添加一行或多行。多行时除最后一行外,每行末尾需用“\”续行 c\ 用此符号后的新文本替换当前行中的文本。多行时除最后一行外,每行末尾需用\续行 i\ 在当前行之前插入文本。多行时除最后一行外,每行末尾需用\续行 d 删除行 h 把模式空间里的内容复制到暂存缓冲区 H 把模式空间里的内容追加到暂存缓冲区 g 把暂存缓冲区里的内容复制到模式空间,覆盖原有的内容 G 把暂存缓冲区的内容追加到模式空间里,追加在原有内容的后面 l 列出非打印字符 p 打印行 n 读入下一输入行,并从下一条命令而不是第一条命令开始对其的处理 q 结束或退出sed r 从文件中读取输入行 ! 对所选行以外的所有行应用命令 s 用一个字符串替换另一个 g 在行内进行全局替换 w 将所选的行写入文件 x 交换暂存缓冲区与模式空间的内容 y 将字符替换为另一字符(不能对正则表达式使用y命令) 3.2 sed选项 选项 功能 -e 进行多项编辑,即对输入行应用多条sed命令时使用 -n 取消默认的输出 -f 指定sed脚本的文件名 4.退出状态 sed不向grep一样,不管是否找到指定的模式,它的退出状态都是0。只有当命令存在语法错误时,sed的退出状态才不是0。 5.正则表达式元字符 与grep一样,sed也支持特殊元字符,来进行模式查找、替换。不同的是,sed使用的正则表达式是括在斜杠线/之间的模式。 如果要把正则表达式分隔符/改为另一个字符,比如o,只要在这个字符前加一个反斜线,在字符后跟上正则表达式,再跟上这个字符即可。例如:sed -n '\o^Myop' datafile 元字符 功能 示例 ^ 行首定位符 /^my/ 匹配所有以my开头的行 $ 行尾定位符 /my$/ 匹配所有以my结尾的行 . 匹配除换行符以外的单个字符 /m..y/ 匹配包含字母m,后跟两个任意字符,再跟字母y的行 * 匹配零个或多个前导字符 /my*/ 匹配包含字母m,后跟零个或多个y字母的行 y/ 匹配包含My或my的行 匹配不在指定字符组内的任一字符 / y/ 匹配包含y,但y之前的那个字符不是M或m的行 \(..\) 保存已匹配的字符 1,20s/\(you\)self/\1r/ 标记元字符之间的模式,并将其保存为标签1,之后可以使用\1来引用它。最多可以定义9个标签,从左边开始编号,最左边的是第一个。此例中,对第1到第20行进行处理,you被保存为标签1,如果发现youself,则替换为your。 保存查找串以便在替换串中引用 s/my/****/ 符号代表查找串。my将被替换为**my** \ 词首定位符 /\my/ 匹配包含以my开头的单词的行 \ 词尾定位符 /my\/ 匹配包含以my结尾的单词的行 x\{m\} 连续m个x /9\{5\}/ 匹配包含连续5个9的行 x\{m,\} 至少m个x /9\{5,\}/ 匹配包含至少连续5个9的行 x\{m,n\} 至少m个,但不超过n个x /9\{5,7\}/ 匹配包含连续5到7个9的行 6.范例 6.1 p命令 命令p用于显示模式空间的内容。默认情况下,sed把输入行打印在屏幕上,选项-n用于取消默认的打印操作。当选项-n和命令p同时出现时,sed可打印选定的内容。 sed '/my/p' datafile #默认情况下,sed把所有输入行都打印在标准输出上。如果某行匹配模式my,p命令将把该行另外打印一遍。 sed - n '/my/p' datafile #选项 - n取消sed默认的打印,p命令把匹配模式my的行打印一遍。 6.2 d命令 命令d用于删除输入行。sed先将输入行从文件复制到模式空间里,然后对该行执行sed命令,最后将模式空间里的内容显示在屏幕上。如果发出的是命令d,当前模式空间里的输入行会被删除,不被显示。 sed '$d' datafile #删除最后一行,其余的都被显示 sed '/my/d' datafile #删除包含my的行,其余的都被显示 6.3 s命令 sed 's/^My/You/g' datafile #命令末端的g表示在行内进行全局替换,也就是说如果某行出现多个My,所有的My都被替换为You。 sed - n '1,20s/My$/You/gp' datafile #取消默认输出,处理1到20行里匹配以My结尾的行,把行内所有的My替换为You,并打印到屏幕上。 sed 's#My#Your#g' datafile #紧跟在s命令后的字符就是查找串和替换串之间的分隔符。分隔符默认为正斜杠,但可以改变。无论什么字符(换行符、反斜线除外),只要紧跟s命令,就成了新的串分隔符。 6.4 e选项 -e是编辑命令,用于sed执行多个编辑任务的情况下。在下一行开始编辑前,所有的编辑动作将应用到模式缓冲区中的行上。 sed - e '1,10d' - e 's/My/Your/g' datafile #选项-e用于进行多重编辑。第一重编辑删除第1-3行。第二重编辑将出现的所有My替换为Your。因为是逐行进行这两项编辑(即这两个命令都在模式空间的当前行上执行),所以编辑命令的顺序会影响结果。 6.5 r命令 r命令是读命令。sed使用该命令将一个文本文件中的内容加到当前文件的特定位置上。 sed '/My/r introduce.txt' datafile #如果在文件datafile的某一行匹配到模式My,就在该行后读入文件introduce . txt的内容。如果出现My的行不止一行,则在出现My的各行后都读入introduce . txt文件的内容。 6.6 w命令 sed - n '/hrwang/w me.txt' datafile 6.7 a\ 命令 a\ 命令是追加命令,追加将添加新文本到文件中当前行(即读入模式缓冲区中的行)的后面。所追加的文本行位于sed命令的下方另起一行。如果要追加的内容超过一行,则每一行都必须以反斜线结束,最后一行除外。最后一行将以引号和文件名结束。 sed '/^hrwang/a\ hrwang and mjfan are husband\ and wife' datafile #如果在datafile文件中发现匹配以hrwang开头的行,则在该行下面追加hrwang and mjfan are husband and wife 6.8 i\ 命令 i\ 命令是在当前行的前面插入新的文本。 6.9 c\ 命令 sed使用该命令将已有文本修改成新的文本。 6.10 n命令 sed使用该命令获取输入文件的下一行,并将其读入到模式缓冲区中,任何sed命令都将应用到匹配行紧接着的下一行上。 sed '/hrwang/{n;s/My/Your/;}' datafile 注:如果需要使用多条命令,或者需要在某个地址范围内嵌套地址,就必须用花括号将命令括起来,每行只写一条命令,或这用分号分割同一行中的多条命令。 6.11 y命令 该命令与UNIX/Linux中的tr命令类似,字符按照一对一的方式从左到右进行转换。例如,y/abc/ABC/将把所有小写的a转换成A,小写的b转换成B,小写的c转换成C。 sed '1,20y/hrwang12/HRWANG^$/' datafile #将1到20行内,所有的小写hrwang转换成大写,将1转换成^ , 将2转换成 $ 。 #正则表达式元字符对y命令不起作用。与s命令的分隔符一样,斜线可以被替换成其它的字符。 6.12 q命令 q命令将导致sed程序退出,不再进行其它的处理。 sed '/hrwang/{s/hrwang/HRWANG/;q;}' datafile 6.13 h命令和g命令 #cat datafile My name is hrwang. Your name is mjfan. hrwang is mjfan's husband. mjfan is hrwang's wife. sed - e '/hrwang/h' - e '$G' datafile sed -e '/hrwang/H' -e '$G' datafile #通过上面两条命令,你会发现h会把原来暂存缓冲区的内容清除,只保存最近一次执行h时保存进去的模式空间的内容。而H命令则把每次匹配hrwnag的行都追加保存在暂存缓冲区。 sed -e '/hrwang/H' -e '$g' datafile sed -e '/hrwang/H' -e '$G' datafile #通过上面两条命令,你会发现g把暂存缓冲区中的内容替换掉了模式空间中当前行的内容,此处即替换了最后一行。而G命令则把暂存缓冲区的内容追加到了模式空间的当前行后。此处即追加到了末尾。 7. sed脚本 sed脚本就是写在文件中的一列sed命令。脚本中,要求命令的末尾不能有任何多余的空格或文本。如果在一行中有多个命令,要用分号分隔。执行脚本时,sed先将输入文件中第一行复制到模式缓冲区,然后对其执行脚本中所有的命令。每一行处理完毕后,sed再复制文件中下一行到模式缓冲区,对其执行脚本中所有命令。使用sed脚本时,不再用引号来确保sed命令不被shell解释。例如sed脚本script: #handle datafile 3i\ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 3 , $ s / \ ( hrwang\ ) is \ ( mjfan\ ) / \ 2 is \1 / $ a \ We will love eachother for ever!! #sed -f script datafile My name is hrwang Your name is mjfan ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ mjfan is hrwang 's husband . #啦啦~~~ mjfan is hrwang' s wife . We will love eachother forever!! http://www.cnblogs.com/edwardlost/archive/2010/09/17/1829145.html
个人分类: unix|1594 次阅读|0 个评论
[转载]LaTeX命令速查手册
Daniel1985 2013-10-7 18:45
【转】LaTeX命令速查手册 +---------------------------------+ |TeX各版本概述及基本约定,特殊字符| +---------------------------------+ tex提供300多条基本排版命令 由D.E.Knuth1978年开发 plain tex:在tex基础上新定义600多条复合命令 AMS-TEX:美国数学会开发(amsmath宏包)排版的数学公式 LATEX:L.Lamport(1985)编写,适合排版普通文章和书籍 LATEX2e:可加载amsmath宏包,目前最流行的TEX宏包 版本:LATEX2.09--LATEX2e--LATEX3(开发中) 中文排版: CCT:科学院张林波 TY(天元):华师大肖刚、陈志杰教授开发 CJK:德国W.Lemberg开发,处理中日韩三国文字。 发行版CTEX:集成了CCT,TY,CJK的MikTEX系统。 ChinaTEX:内容涵盖MiKTeX系统及中文支持、常用外围软件、TeX\LaTeX文档和模板选萃等 TeX中的长度 mm毫米 cm厘米 in英寸=2.54cm=72.27pt pt点 em大写字母M的宽度 ex小写字母x的高度 弹性长度:根据需要自动伸缩 正常值plus伸展值minus收缩值 实际长度可超过正常值和伸展值之和,但不能小于正常值和收缩值之差 \documentclass {article}%11pt字体,普通文章 %导言区,全局命令 \usepackage{CJK}%使用CJK宏包 \begin{document}%主环境 \begin{CJK}{GBK}{song}%汉字必须放入CJK环境 %其它字体:song,kai,fs,hei,li,you %CJK的两种环境CJK和CJK* %GBK是采用的字符集:GB,GBK,Bg5,Gbt Hi,This is my first \LaTeX file 祝贺你,MikTex和CJK安装成功了 \end{CJK} \end{document} CJK和CJK*环境之间的切换 \CJKspace和\CJKnospace \CJKtilde 重新定义~的长度 基本约定 分组{......} 注释符:% 西文标点后要加空格 各种环境的开始和结束命令最好独占一行 换行:连续两个回车,一个仅为空格 输入特殊字符 前加\的有:#$%{}~_^ \=\textbackslash |,,=$|$,$$,$$,$*$(中间星) *=*上面星 特殊符号\s \p \dag \ddag \copyrigh版权号,\pounds 磅 \TeX \LaTeX \LaTeXe \AmS-\LaTeX(最后这个要amsmath宏包) 单引号:`'(1键前面的) 双引号:`` +------------------------------+ |段落、行距、水平间距、缩进命令| +------------------------------+ 强制分行:\\或\\* 、\newline 建议分行:\linebreak \linebreak增加字间距,强制换行 \nolinebreak[n]建议不分行 \mbox{内容}内容保持在同一行 分段:\par,或两个回车 分页:自动分页 强制分页:\newpage 建议分页:\pagebreak[n],\nopagebreak[n] 增加当前页高度有时可以避免难看的分页 \enlargethispage{尺寸}可增加的最大高度 \enlargethispage*{尺寸}指定增加高度 水平间距: \quad 插入空白相当于当前字体大小 \qquad=\quad×2 \ ,=\quad×3/18 ~=???好象比\ 小 \hspace{宽度大小},\hspace*{宽度大小} \hfill弹性长度:hspace{\hfill}插入空白,撑满整行 \hphantom{文本内容},占据文本内容的宽度 \vphantom 放在\begin{document}之后,字体尺寸改变时才生效 +----------------------------------+ |西文字体属性、及中文字体属性、命令| +----------------------------------+ 字体有5种属性 族: \rmfamily:罗马字体 \sffamily:无衬线字体 \ttfamily:打字机字体 形状:(shape)直立斜 \upshape:直立 \itshape:意大利斜体 \slshape:斜体 \scshape:小体大写 系列:(series)宽度黑度 \mdseries:中等权重(黑) \bfseries:粗体 \normalfont:默认字体,中等权重直立罗马字体 西文尺寸:10pt,11pt,12pt \em强调,一般为斜体 以上命令称为声明(无参数) 每一声明对应字体命令 命令只对其参数中的文本起作用 族: \testrm{},\testsf{},\testtt{} 形状 \textup{},\textit{},\textsl{},\textsc{} 系列 \textmd{},\textbf{} 默认值:\textnormal{} 强调:\emph{} 定义了基本尺寸后,可使用下面的声明来改变字体 \tiny 5pt \scriptsize 7pt \footnotesize 8pt \small 9pt \normalsize 10pt \large 12pt \Large 14.4pt \LARGE 17.28pt \huge 20.74pt \Huge 24.88pt 以上尺寸是基本尺寸为10pt时的大小 所有西文字体命令对中文同样起作用 italic和slanted斜体对中文一样 中文书籍基本字号为5号约等于11pt 使用GBK编码时,可同时输入简繁体。 自定义字体大小 \fontsize{字体尺寸}{行距}后面须加上\selectfont才生效 可得到任意大小汉字,西文最大不能超\Huge 行距通常为字体大小的1.2-1.5倍 例:\fontsize{12pt}{\baselineskip}\selectfont \usepackage{type1cm}任意大小西文 行距:\linespread{1.3}产生1.5倍行距,1.6产生双倍行距,效果夸张,不适合出版 用下面方法:\setlength{\baselineskip}{1.5\baselineskip}{......} 正文中更换字体:\CJKfamily{字体族} 为方便,作以下自定义 \newcommand*{\SONG}{\CJKfamily{song}} \newcommand*{\HEI}{\CJKfamily{hei}} \newcommand*{\KAI}{\CJKfamily{kai}} \newcommand*{\FS}{\CJKfamily{fs}} \newcommand*{\LI}{\CJKfamily{li}} \newcommand*{\YOU}{\CJKfamily{YOU}} 引用更改为宋体:\SONG 正文 文本居中 文本默认为左对齐 单行文本居中命令 \centerline{....} 多行使用\begin{center}环境 居中声明:\centering(不建议使用) +------------+ |参考文献环境| +------------+ \begin{thebibliography}{编号样本} \bibitem {引用标志} 文献条目 . . . \bibitem {引用标志} 文献条目 \end{thebibliography} \bibitem {不可省由字母,数字和,号外符号组成,各个文献互不相 同} 文献条目 编号样本,指定记号的宽度,一般为数字 引用文献时用\cite{引用标志1,引用标志2} 调节各文献间距离 \setlength{\itemsep}{高度} 标题缺省为左对齐Reference (\Large\bfseries) 由\refname值确定 书籍参考文献标题由\bibname值确定 文献条目包含:作者,标题,出版社,年代,版本,页码 一行放不下,后面自动缩进,距离为“编号样本”宽度 +----------+ | 脚 注 | +----------+ \footnote{脚注内容} article文档,整篇同一编号 book和report文档,每章统一编号 +----------------+ | 文档类别、章节 | +----------------+ \documentclass {article,book,report,letter,只能选一种} article 短篇文章 report 长篇报告,可分章 book (书)可含chapter,奇偶页采用不同处理 可选项对整篇文档起作用,使用多个选项互不排斥,用逗号分隔 基本字体:10pt,11pt,12pt 纸张大小:letterpaper,a4paper,a5paper... 排版方向:portrait(竖向),landscape(横向) 标题页:titlepage,notitlepage final和draft 指定纸张大小(只有latex2e中使用) letterpaper(11*8.5in) legalpaper(14*8.5in) executivepaper(10.5*7.25in) a4paper(29.7*21cm) a5paper(21*14.8cm) b5paper(25*17.6cm) 默认值是letterpaper,美国信纸尺寸,纵向 landscape 横向 章节命令: \part,\chapter,\section,\subsection,\subsubsection,\paragraph,\subparagraph \命令 {标题},用于显示在目录和页眉 \命令*{标题} 层次号:book中\part为-1(article中为0),\chapter为0,.... book类 \part,\chapter独立编号,只出现在奇数页,\part独占一页 \section,\subsection 关联编号 article类 \part,\section独立编号 \subsection,\subsubsection 关联编号 星号章节不参加自动编号 \part和\chapter标题占两行 标题中文化 \renewcommand{\partname}{} \renewcommand{\thepart}{第\,\Roman{part}}\,篇} 修改编号最深层次 \setcounter{secnumberdepth}{数} secnumberdepth,book类-2~5,缺省为2,-2时取消编号 article类-1~5,缺省为3 自动编号章节对应计数器 part,chapter,section,bsection,subsubsection,paragraph,subparagraph 修改计数器值: \setcounter{计数器名}{数} TeX的版式首先是文件版式, 也就是我们接触的第一个最最最 简单的TeX文档中的第一句: \documentstyle {格式} 其中的[]及选项是可选的, 而{格式}是必需的. LaTeX有以下几种 格式: article(文章), report(报告), book(书), letter(信件). CCT对前面三种进行了汉化, 分别是carticle, creport和cbook. 常用的选项有 10pt/11pt/12pt: 定义基准字号, 缺省10pt. twoside: 两面印刷格式, 因奇偶页装订位置不同而异, 缺省为 单页. twocolumn: 双栏排版, 缺省为单栏. titlepage: 仅在article格式使用, 它是\maketile产生一个单 独的文章题目页, 同时abstract也产生单独页 leqno: 使公式标号出现在左边, 缺省在右 fleqn: 公式左对齐, 缺省中间对齐 thesis: 专用于毕业论文排版 IEEE: 专向IEEE类杂志投稿的格式 IFTHEN: 排版计算机程序 \columnsep 指定两栏间距 \columnseprule 两栏间竖线宽度,默认为0。 \mathindent 选择fleqn时 左边界的缩进量 以上参数修改用\setlength{\mathindent}{2.5cm} LaTeX的一个页面有页眉(head, 通常是杂志名, 卷号, 当前 章节名等), 主体(body, 正文, 包括脚注及图表), 页脚(通常是 页码, 如果页码放在页眉处, 则页脚可能是空的). 我们用下面的 指令控制页版面: \pagestyle{参数} 参数可以是 plain: 页码在页脚居中, 页眉空白, 为article, report的缺省 empty: 页眉页脚都空白 heading: 页脚为空, 页眉为正文的章节信息及页码 myheadings: 自定义页眉, 内容由 \markboth{left_head}{right_head} (双面twoside排版) 或\markright{right_head} (单面排版) \pagestyle是对全文有效的, 而如果要定义某页的页面格式, 则可用\thispagestyle, 用法同上, 下一页自动恢复原设置. 这里提到页码, 我们经常会修改页码的表现格式, 可能用阿 拉伯数字或罗马数字等, 则修改\pagenumbering{参数}, 这里参 数可以是arabic(阿拉伯数字), roman(小写罗马数字: i, ii, iii,) Roman(大写罗马数字: I, II, III,), alph(小写英文: a, b, c,), Alph(大写英文: A, B, C). 如果需要更改某页的页码, 则用修改 计数器命令: \setcounter{page}{数字}, 这里page是页码计数器. +----------------+ |*修改版面的命令*| +----------------+ TeX中还经常会在\documentstyle和\begin{document}之间 常用到很多修改版面尺寸的命令. 如未指明, 这些命令的格式都 是用\para_name=newvalue的格式. \texwidth, \texheight 主要正文body的宽度和高度, 不包括页眉页脚 \oddsidemargin, \evensidemargin 奇数/偶数页, 纸张左边缘 到页body左边缘的距离减去一英寸 \topmargin 纸张上边缘到页眉或body(无页眉时)的距离减去一 英寸 \marginparwidth 页边注(marginnote)的宽度 \marginparsep 正文边缘到页边注边缘的距离 \headheight 页眉高度 \headsep 页眉底部到页主体顶部的距离 \footheight 页脚高度 \footskip 页正文最后一行底到页脚底的距离 (建议, 总把 \oddsizemargin(奇数页的左边界) \evensidemargin(偶数页的左边界) \topmargin(从上页边到页眉的距离) 设为0cm; 如果没用页眉, 将 \headheight(页眉高度), headsep(页眉基线到正文顶部的距离) 设为0cm; 如果没用页脚, 将 \footheight(已过时latex2e中已被去掉), \footskip(正文底部到页脚底部的距离)设为0cm, 这样便于在输出时直接利用驱动程序的功能控制版心的位置.) \columnsep 双栏article中, 左右栏间空白的距离 \columnseprule 双栏article中, 左右栏间分隔线的宽度, 缺省 为零, 即没有线 以下参数的修改可以在\begin{document}的前面和后面: \parskip 段落之间除了空出正常行距外额外空出的距离 \parindent 段首空白的长度 \footnotesep 两个注脚之间的距离 \baselineskip 正文中前一行底和第二行底的距离, 会因字号的 改变自动改变. 另外, 定义行距还有一个特殊的参数, 那是\baselinestretch, 它是用在\begin{document}前的全局变量, 修改格式如 \renewcommand\baselinestretch{倍数} 缺省时为1.0, 因此 LaTeX中最小行距是\baselineskip乘上\baselinestretch得到的. +----------------+ | 文档标题、摘要 | +----------------+ \title{标题可有\\换行} \author{作者名可用and分开} \date{日期可选,无命令自动当天日期,空白选项不显示} \thanks{}可出现\maketitle以上任何位置,或几个\thanks \maketitle LaTex用特定字体、号居中输出 自定义标题环境 \begin{titlepage} \end{titlepage} 生成标题独占一页,并重置页码计数器 摘要环境 \begi{abstract} ... \end{abstract} book类没有摘要 摘要标题中文化 \renewcommand{abstractname}{摘\qquad 要}
个人分类: 小软件|8345 次阅读|0 个评论
[转载]ubuntu 关机,重启,注销命令
plgongcat 2013-1-14 08:18
1 关机命令 shutdown   好像ubuntu的终端中默认的是当前用户的命令,只是普通用户,因此在终端器中可以使用sudo -sh 转换到管理员root用户下执行命令。   1)shutdown –help   可以查看shutdown命令如何使用,当然也可以使用man shutdown命令。   2) shutdown -h now 现在立即关机   3)shutdown -r now 现在立即重启   4)shutdown -r +3 三分钟后重启   5)shutdown -h +3 “The System will shutdown after 3 minutes” 提示使用者将在三分钟后关机   6)shutdown -r 20:23 在20:23时将重启计算机   7)shutdown -r 20:23 可以将在20:23时重启的任务放到后台去,用户可以继续操作终端    2中断命令   1)执行完命令后(若没有转到后台),可以使用CTRL+C来中止命令   2)kill 程序编码   当命令在后台执行时系统会返回一个程序编码,例如:在使用 shutdown -r 20:23 系统返回系统编码:4905   我们可以使用kill 4905来中止重启命令   3ps aux | grep 程序编号   我们如果知道程序的编号,我们可以使用ps aux |grep 程序编号来查询该程序编号对应的命令是什么。   例如上面的程序编号为4905 ,我们可以使用ps aux | grep 4905 就可以查到 shutdown -r 20:23 的命令   halt—-最简单的关机命令   其实halt就是调用shutdown -h。halt执行时﹐杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核。   参数说明:    防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。    并不是真正的重启或关机﹐只是写wtmp〔/var/log/wtmp〕纪录。    不写wtmp纪录〔已包含在选项 中〕。    没有调用shutdown而强制关机或重启。    关机〔或重启〕前﹐关掉所有的网络接口。    该选项为缺省选项。就是关机时调用poweroff。   init    init是所有进程的祖先﹐它的进程号始终为1﹐所以发送TERM信号给init会终止所有的用户进程﹑守护进程等。shutdown 就是使用这种机制。init定义了8个运行级别(runlevel),init 0为关机﹐init 1为重启。关于init可以长篇大论﹐这里就不再叙述。另外还有telinit命令可以改变init的运行级别﹐比如﹐telinit -iS可使系统进入单用户模式﹐并且得不到使用shutdown时的信息和等待时间。    注销系统的logout命令   Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可:    #logout   Red Hat Linuxrelease 9(Shike)   Kernel 2.4.20.8 on an i686   Login: ← 回到登陆的画面 转载: http://blog.163.com/erikdang@126/blog/static/3231632520111260735168/
个人分类: unix|2137 次阅读|0 个评论
unix命令问答式习题集
plgongcat 2012-12-8 19:54
链接: http://www.doc88.com/p-518461331963.html
个人分类: unix|2207 次阅读|0 个评论
[转载]MySQL和PostgreSQL比较
bioseq 2012-9-13 17:06
特性 MySQL PostgreSQL 实例 通过执行 MySQL 命令(mysqld)启动实例。一个实例可以管理一个或多个数据库。一台服务器可以运行多个 mysqld 实例。一个实例管理器可以监视 mysqld 的各个实例。 通过执行 Postmaster 进程(pg_ctl)启动实例。一个实例可以管理一个或多个数据库,这些数据库组成一个集群。集群是磁盘上的一个区域,这个区域在安装时初始化并由一个目录组成,所有数据都存储在这个目录中。使用 initdb 创建第一个数据库。一台机器上可以启动多个实例。 数据库 数据库是命名的对象集合,是与实例中的其他数据库分离的实体。一个 MySQL 实例中的所有数据库共享同一个系统编目。 数据库是命名的对象集合,每个数据库是与其他数据库分离的实体。每个数据库有自己的系统编目,但是所有数据库共享 pg_databases。 数据缓冲区 通过 innodb_buffer_pool_size 配置参数设置数据缓冲区。这个参数是内存缓冲区的字节数,InnoDB 使用这个缓冲区来缓存表的数据和索引。在专用的数据库服务器上,这个参数最高可以设置为机器物理内存量的 80%。 Shared_buffers 缓存。在默认情况下分配 64 个缓冲区。默认的块大小是 8K。可以通过设置 postgresql.conf 文件中的 shared_buffers 参数来更新缓冲区缓存。 数据库连接 客户机使用 CONNECT 或 USE 语句连接数据库,这时要指定数据库名,还可以指定用户 id 和密码。使用角色管理数据库中的用户和用户组。 客户机使用 connect 语句连接数据库,这时要指定数据库名,还可以指定用户 id 和密码。使用角色管理数据库中的用户和用户组。 身份验证 MySQL 在数据库级管理身份验证。 基本只支持密码认证。 PostgreSQL 支持丰富的认证方法:信任认证、口令认证、Kerberos 认证、基于 Ident 的认证、LDAP 认证、PAM 认证 加密 可以在表级指定密码来对数据进行加密。还可以使用 AES_ENCRYPT 和 AES_DECRYPT 函数对列数据进行加密和解密。可以通过 SSL 连接实现网络加密。 可以使用 pgcrypto 库中的函数对列进行加密/解密。可以通过 SSL 连接实现网络加密。 审计 可以对 querylog 执行 grep。 可以在表上使用 PL/pgSQL 触发器来进行审计。 查询解释 使用 EXPLAIN 命令查看查询的解释计划。 使用 EXPLAIN 命令查看查询的解释计划。 备份、恢复和日志 InnoDB 使用写前(write-ahead)日志记录。支持在线和离线完全备份以及崩溃和事务恢复。需要第三方软件才能支持热备份。 在数据目录的一个子目录中维护写前日志。支持在线和离线完全备份以及崩溃、时间点和事务恢复。 可以支持热备份。 JDBC 驱动程序 可以从 参考资料 下载 JDBC 驱动程序。 可以从 参考资料 下载 JDBC 驱动程序。 表类型 取决于存储引擎。例如,NDB 存储引擎支持分区表,内存引擎支持内存表。 支持临时表、常规表以及范围和列表类型的分区表。不支持哈希分区表。 由于PostgreSQL的表分区是通过表继承和规则系统完成了,所以可以实现更复杂的分区方式。 索引类型 取决于存储引擎。MyISAM:BTREE,InnoDB:BTREE。 支持 B-树、哈希、R-树和 Gist 索引。 约束 支持主键、外键、惟一和非空约束。对检查约束进行解析,但是不强制实施。 支持主键、外键、惟一、非空和检查约束。 存储过程和用户定义函数 支持 CREATE PROCEDURE 和 CREATE FUNCTION 语句。存储过程可以用 SQL 和 C++ 编写。用户定义函数可以用 SQL、C 和 C++ 编写。 没有单独的存储过程,都是通过函数实现的。用户定义函数可以用 PL/pgSQL(专用的过程语言)、PL/Tcl、PL/Perl、PL/Python 、SQL 和 C 编写。 触发器 支持行前触发器、行后触发器和语句触发器,触发器语句用过程语言复合语句编写。 支持行前触发器、行后触发器和语句触发器,触发器过程用 C 编写。 系统配置文件 my.conf Postgresql.conf 数据库配置 my.conf Postgresql.conf 客户机连接文件 my.conf pg_hba.conf XML 支持 有限的 XML 支持。 有限的 XML 支持。 数据访问和管理服务器 OPTIMIZE TABLE —— 回收未使用的空间并消除数据文件的碎片 myisamchk -analyze —— 更新查询优化器所使用的统计数据(MyISAM 存储引擎) mysql —— 命令行工具 MySQL Administrator —— 客户机 GUI 工具 Vacuum —— 回收未使用的空间 Analyze —— 更新查询优化器所使用的统计数据 psql —— 命令行工具 pgAdmin —— 客户机 GUI 工具 并发控制 支持表级和行级锁。InnoDB 存储引擎支持 READ_COMMITTED、READ_UNCOMMITTED、REPEATABLE_READ 和 SERIALIZABLE。使用 SET TRANSACTION ISOLATION LEVEL 语句在事务级设置隔离级别。 支持表级和行级锁。支持的 ANSI 隔离级别是 Read Committed(默认 —— 能看到查询启动时数据库的快照)和 Serialization(与 Repeatable Read 相似 —— 只能看到在事务启动之前提交的结果)。使用 SET TRANSACTION 语句在事务级设置隔离级别。使用 SET SESSION 在会话级进行设置。 MySQL相对于PostgreSQL的劣势: MySQL PostgreSQL 最重要的引擎InnoDB很早就由Oracle公司控制。目前整个MySQL数据库都由Oracle控制。 BSD协议,没有被大公司垄断。 对复杂查询的处理较弱,查询优化器不够成熟 很强大的查询优化器,支持很复杂的查询处理。 只有一种表连接类型:嵌套循环连接(nested-loop),不支持排序-合并连接(sort-merge join)与散列连接(hash join)。 都支持 性能优化工具与度量信息不足 提供了一些性能视图,可以方便的看到发生在一个表和索引上的select、delete、update、insert统计信息,也可以看到cache命中率。网上有一个开源的pgstatspack工具。 InnoDB的表和索引都是按相同的方式存储。也就是说表都是索引组织表。这一般要求主键不能太长而且插入时的主键最好是按顺序递增,否则对性能有很大影响。 不存在这个问题。 大部分查询只能使用表上的单一索引;在某些情况下,会存在使用多个索引的查询,但是查询优化器通常会低估其成本,它们常常比表扫描还要慢。 不存在这个问题 表增加列,基本上是重建表和索引,会花很长时间。 表增加列,只是在数据字典中增加表定义,不会重建表 存储过程与触发器的功能有限。可用来编写存储过程、触发器、计划事件以及存储函数的语言功能较弱 除支持pl/pgsql写存储过程,还支持perl、python、Tcl类型的存储过程:pl/perl,pl/python,pl/tcl。 也支持用C语言写存储过程。 不支持Sequence。 支持 不支持函数索引,只能在创建基于具体列的索引。 不支持物化视图。 支持函数索引,同时还支持部分数据索引,通过规则系统可以实现物化视图的功能。 执行计划并不是全局共享的, 仅仅在连接内部是共享的。 执行计划共享 MySQL支持的SQL语法(ANSI SQL标准)的很小一部分。不支持递归查询、通用表表达式(Oracle的with 语句)或者窗口函数(分析函数)。 都 支持 不支持用户自定义类型或域(domain) 支持。 对于时间、日期、间隔等时间类型没有秒以下级别的存储类型 可以精确到秒以下。 身份验证功能是完全内置的,不支持操作系统认证、PAM认证,不支持LDAP以及其它类似的外部身份验证功能。 支持OS认证、Kerberos 认证 、Ident 的认证、LDAP 认证、PAM 认证 不支持database link。有一种叫做Federated的存储引擎可以作为一个中转将查询语句传递到远程服务器的一个表上,不过,它功能很粗糙并且漏洞很多 有dblink,同时还有一个dbi-link的东西,可以连接到oracle和mysql上。 Mysql Cluster可能与你的想象有较大差异。开源的cluster软件较少。 复制(Replication)功能是异步的,并且有很大的局限性.例如,它是单线程的(single-threaded),因此一个处理能力更强的Slave的恢复速度也很难跟上处理能力相对较慢的Master. 有丰富的开源cluster软件支持。 explain看执行计划的结果简单。 explain返回丰富的信息。 类似于ALTER TABLE或CREATE TABLE一类的操作都是非事务性的.它们会提交未提交的事务,并且不能回滚也不能做灾难恢复 DDL也是有事务的。 PostgreSQL主要优势:   1. PostgreSQL完全免费,而且是BSD协议,如果你把PostgreSQL改一改,然后再拿去卖钱,也没有人管你,这一点很重要,这表明了PostgreSQL数据库不会被其它公司控制。oracle数据库不用说了,是商业数据库,不开放。而MySQL数据库虽然是开源的,但现在随着SUN被oracle公司收购,现在基本上被oracle公司控制,其实在SUN被收购之前,MySQL中最重要的InnoDB引擎也是被oracle公司控制的,而在MySQL中很多重要的数据都是放在InnoDB引擎中的,反正我们公司都是这样的。所以如果MySQL的市场范围与oracle数据库的市场范围冲突时,oracle公司必定会牺牲MySQL,这是毫无疑问的。   2. 与PostgreSQl配合的开源软件很多,有很多分布式集群软件,如pgpool、pgcluster、slony、plploxy等等,很容易做读写分离、负载均衡、数据水平拆分等方案,而这在MySQL下则比较困难。 3. PostgreSQL源代码写的很清晰,易读性比MySQL强太多了,怀疑MySQL的源代码被混淆过。所以很多公司都是基本PostgreSQL做二次开发的。 4. PostgreSQL在很多方面都比MySQL强,如复杂SQL的执行、存储过程、触发器、索引。同时PostgreSQL是多进程的,而MySQL是线程的,虽然并发不高时,MySQL处理速度快,但当并发高的时候,对于现在多核的单台机器上,MySQL的总体处理性能不如PostgreSQL,原因是MySQL的线程无法充分利用CPU的能力。 目前只想到这些,以后想到再添加,欢迎大家拍砖。 PostgreSQL与oracle或InnoDB的多版本实现的差别 PostgreSQL与oracle或InnoDB的多版本实现最大的区别在于最新版本和历史版本是否分离存储,PostgreSQL不分,而oracle和InnoDB分,而innodb也只是分离了数据,索引本身没有分开。 PostgreSQL的主要优势在于: 1. PostgreSQL没有回滚段,而oracle与innodb有回滚段,oracle与Innodb都有回滚段。对于oracle与Innodb来说,回滚段是非常重要的,回滚段损坏,会导致数据丢失,甚至数据库无法启动的严重问题。另由于PostgreSQL没有回滚段,旧数据都是记录在原先的文件中,所以当数据库异常crash后,恢复时,不会象oracle与Innodb数据库那样进行那么复杂的恢复,因为oracle与Innodb恢复时同步需要redo和undo。所以PostgreSQL数据库在出现异常crash后,数据库起不来的几率要比oracle和mysql小一些。 2. 由于旧的数据是直接记录在数据文件中,而不是回滚段中,所以不会象oracle那样经常报ora-01555错误。 3. 回滚可以很快完成,因为回滚并不删除数据,而oracle与Innodb,回滚时很复杂,在事务回滚时必须清理该事务所进行的修改,插入的记录要删除,更新的记录要更新回来(见row_undo函数),同时回滚的过程也会再次产生大量的redo日志。 4. WAL日志要比oracle和Innodb简单,对于oracle不仅需要记录数据文件的变化,还要记录回滚段的变化。 PostgreSQL的多版本的主要劣势在于: 1、最新版本和历史版本不分离存储,导致清理老旧版本需要作更多的扫描,代价比较大,但一般的数据库都有高峰期,如果我们合理安排VACUUM,这也不是很大的问题,而且在PostgreSQL9.0中VACUUM进一步被加强了。   2、由于索引中完全没有版本信息,不能实现Coverage index scan,即查询只扫描索引,直接从索引中返回所需的属性,还需要访问表。而oracle与Innodb则可以; 进程模式与线程模式的对比 PostgreSQL和oracle是进程模式,MySQL是线程模式。 进程模式对多CPU利用率比较高。 进程模式共享数据需要用到共享内存,而线程模式数据本身就是在进程空间内都是共享的,不同线程访问只需要控制好线程之间的同步。 线程模式对资源消耗比较少。 所以MySQL能支持远比oracle多的更多的连接。 对于PostgreSQL的来说,如果不使用连接池软件,也存在这个问题,但PostgreSQL中有优秀的连接池软件软件,如pgbouncer和pgpool,所以通过连接池也可以支持很多的连接。 堆表与索引组织表的的对比 Oracle支持堆表,也支持索引组织表 PostgreSQL只支持堆表,不支持索引组织表 Innodb只支持索引组织表 索引组织表的优势: 表内的数据就是按索引的方式组织,数据是有序的,如果数据都是按主键来访问,那么访问数据比较快。而堆表,按主键访问数据时,是需要先按主键索引找到数据的物理位置。 索引组织表的劣势: 索引组织表中上再加其它的索引时,其它的索引记录的数据位置不再是物理位置,而是主键值,所以对于索引组织表来说,主键的值不能太大,否则占用的空间比较大。 对于索引组织表来说,如果每次在中间插入数据,可能会导致索引分裂,索引分裂会大大降低插入的性能。所以对于使用innodb来说,我们一般最好让主键是一个无意义的序列,这样插入每次都发生在最后,以避免这个问题。 由于索引组织表是按一个索引树,一般它访问数据块必须按数据块之间的关系进行访问,而不是按物理块的访问数据的,所以当做全表扫描时要比堆表慢很多,这可能在OLTP中不明显,但在数据仓库的应用中可能是一个问题。   PostgreSQL9.0中的特色功能: PostgreSQL中的Hot Standby功能 也就是standby在应用日志同步时,还可以提供只读服务,这对做读写分离很有用。这个功能是oracle11g才有的功能。 PostgreSQL异步提交(Asynchronous Commit)的功能 :   这个功能oracle中也是到oracle11g R2才有的功能。因为在很多应用场景中,当宕机时是允许丢失少量数据的,这个功能在这样的场景中就特别合适。在PostgreSQL9.0中把synchronous_commit设置为false就打开了这个功能。需要注意的是,虽然设置为了异步提交,当主机宕机时,PostgreSQL只会丢失少量数据,异步提交并不会导致数据损坏而数据库起不来的情况。MySQL中没有听说过有这个功能。 PostgreSQL中索引的特色功能 : PostgreSQL中可以有部分索引,也就是只能表中的部分数据做索引,create index 可以带where 条件。同时PostgreSQL中的索引可以反向扫描,所以在PostgreSQL中可以不必建专门的降序索引了。
3938 次阅读|0 个评论
[转载]unix下常用解压和压缩命令
plgongcat 2012-5-28 15:33
unix下常用解压和压缩命令 freeflyer - by - 2007-8-8 9:18:00 2 推荐 .tar 解包: tar xvf FileName.tar 打包:tar cvf FileName.tar DirName --------------------------------------------- .gz 解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName .tar.gz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName --------------------------------------------- .bz2 解压1:bzip2 -d FileName.bz2 解压2:bunzip2 FileName.bz2 压缩: bzip2 -z FileName .tar.bz2 解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName --------------------------------------------- .bz 解压1:bzip2 -d FileName.bz 解压2:bunzip2 FileName.bz 压缩:未知 .tar.bz 解压:tar jxvf FileName.tar.bz 压缩:未知 --------------------------------------------- .Z 解压:uncompress FileName.Z 压缩:compress FileName .tar.Z 解压:tar Zxvf FileName.tar.Z 压缩:tar Zcvf FileName.tar.Z DirName --------------------------------------------- .tgz 解压:tar zxvf FileName.tgz 压缩:未知 .tar.tgz 解压:tar zxvf FileName.tar.tgz 压缩:tar zcvf FileName.tar.tgz FileName --------------------------------------------- .zip 解压:unzip FileName.zip 压缩:zip FileName.zip DirName --------------------------------------------- .rar 解压:rar a FileName.rar 压缩:rar e FileName.rar
个人分类: unbutu常见问题|1842 次阅读|0 个评论
[转载]python optparse 模块使用, 及解决中文出错的过程
yaozongzhuan 2011-8-2 23:45
使用命令行时,如果要添加选项的话,python 2.3里新增加了一个模块叫optparse,也是专门来处理命令行选项的。 from optparse import OptionParser parser = OptionParser() parser.add_option("-p", "--pdbk", action="store_true", dest="pdcl", default=False, help="write pdbk data to oracle db") parser.add_option("-z", "--zdbk", action="store_true", dest="zdcl", default=False, help="write zdbk data to oracle db") (options, args) = parser.parse_args() if options.pdcl==True: print 'pdcl is true' if options.zdcl==True: print 'zdcl is true' add_option用来加入选项,action是有store,store_true,store_false等,dest是存储的变量,default是缺省值,help是帮助提示 最后通过parse_args()函数的解析,获得选项,如options.pdcl的值。 基本使用流程: 》1.產生一個 optparse.OptionParser 的物件。可以在產生時將"程式的命令列說明" (usage) 做為參數,交給 OptionParser 的建構子: 1 2 3 from optparse import OptionParser MSG_USAGE = "myprog arg1 " optParser = OptionParser(MSG_USAGE) 》2.呼叫 OptionParser.add_option() 加入接受的 option: 1 2 3 4 5 optParser.add_option( "-f" , "--file" , action = "store" , type = "string" , dest = "fileName" ) 參數 action 有許多種類,預設是 "store",所以即使省略也無妨,其它的 action 種類在下面會繼續說明。 若有一個以上的 option,重覆上述的方式加入(注意:以下省略了 action 參數): 1 2 3 4 optParser.add_option( "-s" , "--someopt" , type = "string" , dest = "someopt" ) 》3.呼叫 OptionParser.parse_args() 進行解讀。如果沒有傳入參數, OptionParser 預設會以 sys.argv 為對象進行解讀。OptionParser.parse_args() 會傳回一個 tuple,由 optparse.Values 和 一個 list 所組成。下例傳入一個假造的參數列: 1 2 3 4 5 6 7 fakeArgs = options, args = optParser.parse_args(fakeArgs) print options.fileName print options.someopt print args 最後會得到的輸出結果: 1 2 3 thefile.txt xyz 這是一個簡單的範例,說明了 OptionParser 的一般使用方式。透過這個例子,可以看到如果為程式加入 option, 並且在程式中取得 option argument 和 positional argument。OptionParser.parse_args() 還有許多用法,下面會說明一部份。 為程式加入 flag option: 許多的 Unix 命令擁有 "-v", "-q" 的 option,代表"提供詳細訊息"或是"不顯示訊息"。要做到這一點,只要在程式中加入下列的 option : 1 2 3 parser.add_option( "-v" , action= "store_true" , dest= "verbose" ) parser.add_option( "-q" , action= "store_false" , dest= "verbose" ) opts, args = parser.parse_args() 第一個 add_option() 加入了一個 "-v" 的 option;如果命令列參數中出現了 "-v",則 opts.verbose 將會是 True;相反的,第二個 add_option() 加入了一個 "-q" option;如果命令列參數中出現了 "-q",則 opts.verbose 將會是 False,這兩者並不相悖,程式可以設計成:當收到 "-v" 時,顯示詳細訊息;當收到 "-q" 時,顯示概略訊息,或完全不顯示;當兩者都沒有收到,則顯示一般的訊息。 設定 option 的預設值: 上述的例子都假設命令例會收到預期中的 option,那麼如果沒有 option 時,接收到的 option 值會是什麼呢?答案是 None!如果想為 option 提供預設值,只要在 OptionParser.parse_args()中指定參數 default 就行了: 1 2 3 parser.add_option( "-v" , action= "store_true" , dest= "verbose" , default = True) parser.add_option( "-q" , action= "store_false" , dest= "verbose" ) opts, args = parser.parse_args() 上述的程式碼為程式加入了兩個 option,當 "-v" 沒有出現時, opts.verbose 預設值為 True;當 "-q" 被指定時, opts.verbose 被設定為 False,和上一個例子有點不同。再看下一個例子: 1 2 parser.add_option( "-v" , action= "store_true" , dest= "verbose" , default=False) parser.add_option( "-q" , action= "store_false" , dest= "verbose" , default=True) opts.verbose 的預設值會是什麼?答案是 True,最後一個指定到同一個目標的 option 預設值會被採用。 一般的 option 亦可加入預設值: 1 parser.add_option( "-f" , action= "store" , dest= "fileName" , default = "defaultConfig.txt" ) 為程式加入說明: 標準的 Unix 命令大多有著 "-h", "--help" 的 option,會將使用說明印出來。在 OptionParser.parse_args() 中指定 "help" 參數,並指定說明的字串,就可以為這個 option 加入說明了: 1 2 3 4 5 parser.add_option( "-v" , action= "store_true" , dest= "verbose" , default=False, help= "make lots of noise " ) 當程式收到 "-h" 或 "--help",交給 OptionParser 解讀時,會自動印出說明內容,而忽略其它的 argument: 1 2 3 4 5 6 7 8 9 usage: yourscript arg1 arg2 options: -h, --help show this help message and exit -v, --verbose make lots of noise -q, --quiet be vewwy quiet (I 'm hunting wabbits) -fFILE, --file=FILE write output to FILE -mMODE, --mode=MODE interaction mode: one of 'novice' , 'intermediate' , 'expert' 還記得一開始提到交給 OptionParser 建構子的參數 MSG_USAGE 嗎? optparse 套件對 usage 訊息也提供了一些支援。在 usage 中使用 "%prog" 關鍵字, OptionParser 會自動將其代換為程式名,即 sys.args : 1 usage = "usage: %prog arg1 arg2" 如果程式名為 "myprog",則出現在 help 訊息中的 usage 就會是: 1 usage = "usage: myprog arg1 arg2" 如果OptionParser 建構子沒有收到任何參數,則會自動產生一個 usage 訊息: 1 "usage: %prog " 前提是程式沒有 positional argument。甭擔心 option 在 help 訊息中排列的方式, OptionParser 會搞定一切,如同前面程式所示。 python 使用OptionParser的时候使用中文出错的解决过程 今天在使用OptionParser的时候,在填写帮助信息的时候使用了中文,却发现报了一系列的错误 代码如下 #!/usr/bin/env python #coding:UTF-8 import ConfigParser,sys try: from optparse import OptionParser except ImportError: try: from optik import OptionParser except ImportError: raise ImportError, ‘Requires Python 2.3 or the Optik option parsing library.’ parser = OptionParser() parser.add_option(”-f”,”–file”,dest=”name”, help=”帮助信息”,metavar=”FILE”) parser.add_option(”-q”,”–quit”, action =”store_false”,dest=”verbose”,default=”True”, help=”帮助信息”) (options,args) = parser.parse_args() 错误信息 File “get-parser-cn.py”, line 23, in module (options,args) = parser.parse_args() File “/usr/lib/python2.5/optparse.py”, line 1387, in parse_args stop = self._process_args(largs, rargs, values) File “/usr/lib/python2.5/optparse.py”, line 1431, in _process_args self._process_short_opts(rargs, values) File “/usr/lib/python2.5/optparse.py”, line 1538, in _process_short_opts option.process(opt, value, values, self) File “/usr/lib/python2.5/optparse.py”, line 774, in process self.action, self.dest, opt, value, values, parser) File “/usr/lib/python2.5/optparse.py”, line 796, in take_action parser.print_help() File “/usr/lib/python2.5/optparse.py”, line 1657, in print_help file.write(self.format_help().encode(encoding, “replace”)) UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 124: ordinal not in range(128) 和 @smallfish9 同学 讨论了一番,并搜索了一些资料后,找到了解决方案如下 import sys reload(sys) # Python2.5 初始化后会删除 sys.setdefaultencoding 这个方法,我们需要重新载入 ,可以注释掉来试试,会提示没有这个setdefaultencoding方法的 #!/usr/bin/env python #coding:UTF-8 import ConfigParser,sys reload(sys) print sys.getdefaultencoding() sys.setdefaultencoding(’utf-8′) try: from optparse import OptionParser except ImportError: try: from optik import OptionParser except ImportError: raise ImportError, ‘Requires Python 2.3 or the Optik option parsing library.’ parser = OptionParser() parser.add_option(”-f”,”–file”,dest=”name”, help=”帮助信息”,metavar=”FILE”) parser.add_option(”-q”,”–quit”, action =”store_false”,dest=”verbose”,default=”True”, help=”帮助信息”) (options,args) = parser.parse_args() 再进行 python get-parser-cn.py -h 的时候,可爱的中文就出来了 今天在使用OptionParser的时候,在填写帮助信息的时候使用了中文,却发现报了一系列的错误 代码如下 #!/usr/bin/env python #coding:UTF-8 import sys from optparse import OptionParser parser = OptionParser() parser.add_option(”-f”,”–file”,dest=”name”,help=”帮助信息”,metavar=”FILE”) (options,args) = parser.parse_args() 错误信息 File “get-parser-cn.py”, line 23, in module (options,args) = parser.parse_args() File “/usr/lib/python2.5/optparse.py”, line 1387, in parse_args stop = self._process_args(largs, rargs, values) File “/usr/lib/python2.5/optparse.py”, line 1431, in _process_args self._process_short_opts(rargs, values) File “/usr/lib/python2.5/optparse.py”, line 1538, in _process_short_opts option.process(opt, value, values, self) File “/usr/lib/python2.5/optparse.py”, line 774, in process self.action, self.dest, opt, value, values, parser) File “/usr/lib/python2.5/optparse.py”, line 796, in take_action parser.print_help() File “/usr/lib/python2.5/optparse.py”, line 1657, in print_help file.write(self.format_help().encode(encoding, “replace”)) UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 124: ordinal not in range(128) 和 @smallfish9 同学 讨论了一番,并搜索了一些资料后,找到了解决方案如下 import sys reload(sys) # Python2.5 初始化后会删除 sys.setdefaultencoding 这个方法,我们需要重新载入 ,可以注释掉来试试,会提示没有这个setdefaultencoding方法的 完整的代码 #!/usr/bin/env python #coding:UTF-8 import sys from optparse import OptionParser reload(sys) print sys.getdefaultencoding() sys.setdefaultencoding(’utf-8′) parser = OptionParser() parser.add_option(”-f”,”–file”,dest=”name”, help=”帮助信息”,metavar=”FILE”) (options,args) = parser.parse_args() 再进行 python get-parser-cn.py -h 的时候,可爱的中文就出来了
个人分类: Python|7690 次阅读|0 个评论
[转载]Matlab常用命令集合
热度 1 pcabaqus 2011-3-21 17:08
1 .常用命令 -- 管理命令和函数 addpath 添加目录到 MATLAB 搜索路径 doc 在 Web 浏览器上现实 HTML 文档 help 显示 Matlab 命令和 M 文件的在线帮助 helpwin helpdesk help lookfor 在基于 Matlab 搜索路径的所有 M 文件中搜索关键字 partialpath 部分路径名 path 所有关于路径名的处理 pathtool 一个不错的窗口路径处理界面 rmpath 删除搜索路径中指定目录 type 显示指定文件的内容 ver 版本信息 version 版本号 web 打开 web 页 what 列出当前目录吓所有的 M 文件 Mat 文件和 Mex 文件 whatsnew 显示 readme 文件 which 显示文件位置 (返回) 2 .常用命令 -- 管理变量和工作区 ( 输入输出、内存管理等 ) clear 从内存中删除 disp 显示文本或数组内容 length 数组长度 ( 最长维数 ) load 重新载入变量 ( 从磁盘上 ) mlock 锁定文件,防止文件被错误删除 munlock 解锁文件 openvar 在数组编辑器中打开变量 pack 整理内存空间 save 保存变量到文件 8*) size 数组维数 who 列出内存变量 whos 列出内存变量 , 同时显示变量维数 workspace 显示工作空间窗口 (返回) 3 .常用命令 -- 管理命令控制窗口 (command 窗口 ) clc 清空命令窗口 echo 禁止或允许显示执行过程 format 设置输出显示格式 home 光标移动到命令窗口左上角 more 设置命令窗口页输出格式 (返回) 4 .常用命令 -- 文件和工作环境 cd 改变工作目录 copyfile 复制文件 delete 删除文件和图形对象 diary 把命令窗口的人机交互保存到文件 dir 显示目录 edit 编辑文本文件 fileparts 返回文件的各个部分 fullfile 使用指定部分建立文件全名 inmem 返回内存 ( 伪代码区 ) 的 matlab 函数名 ls 在 unix 系统中列出目录 (win 中亦可 ) matlabroot 根目录 mkdir 新建目录 open 打开文件 pwd 显示当前目录 tempdir 返回系统临时目录的名字 tempname 随机给出一个临时字符串 ( 可用作文件名 ) ! 直接调用操作系统 command 命令 (返回) 5 .常用命令 -- 启动和退出 Matlab matlabrc Matlab 的启动 M 文件 exit 退出 Matlab quit 退出 Matlab startup 运行 matlab 启动文件 (返回) 6 .语言结构和调试命令 -- 程序设计 builtin 从可重载方法中调用内置函数 eval 执行包含可执行表达式的字符串 evalc 计算并返回表达式的值 evalin 执行某个工作空间中的包含表达式的字符串 feval 执行函数 ( 从函数名或函数句柄 ) function 函数头 global 定义全局变量 nargchk 检查输入参数数目 persistent 定义常量 script 作为脚本的 M 文件 (返回) 7 .语言结构和调试命令 -- 流程控制 break 停止执行循环 case case 语句 ,switch 语句一部分 switchswitch_expr casecase_expr statments case otherwise end catch try-catch 语句一部分,捕捉程序 else if 条件语句一部分 elseif if 条件语句一部分 end 终止 for 、 while 、 switch 、 try 和 if 语句 error 显示错误信息 for 循环语句一 ( 确定次数 ) if if 条件语句 other switch 语句一部分 return 返回到调用函数 switch 开关语句 try try 程序块 warning 类似于 disp ,但可被禁止 while 循环语句 ( 次数不确定 ) (返回) 8 .语言结构和调试命令 -- 交互输入 input 交互输入 keyboard 在 M 文件中遇到 keyboard 时将在命令窗口 产生交互直到输入 return 命令 menu 为用户输入产生一个选择菜单 pause 暂停 (返回) 9 .语言结构和调试命令 -- 面向对象编程 class 创建一个对象或者返回一个对象类 double 转换为双精度 inferiorto 亚类关系 inline 创建一个内联函数 int8,int16,int32 转换到符号整数 isa 检查是否为所给类的对象 loadobj load 函数用户定义扩展 saveobj save 函数用户定义扩展 single 转换为单精度 superiorto 超类关系 uint8,uint16,uint32 转换到无符号整数 (返回) 10 语言结构和调试命令 -- 程序调试 dbclear 断点清除 dbcont 重新开始执行 dbdown 改变当前工作空间 dbmex 调试 Mex 文件 dbquit 退出调试模式 dbstack 显示函数调用堆栈 dbstatus 列出所有断点 dbstep 从断点处执行 dbstop 设置断点 dbtype 列出带行号的 M 文件内容 dbup 改变当前工作空间 (返回) 11 .语言结构和调试命令 --lasterr,lastwarn lasterr 返回 Matlab 中产生的最后一个异常信息。 lastwarn 最后的警告信息这两个函数在调试程序时非常有用 (返回) 12 . 创建图形用户界面 -- 对话框 dialog 创建对话框 errordlg 创建错误对话框 helpdlg 创建帮助对话框 inputdlg 创建输入对话框 listdlg 创建选择列表对话框 msgbox 创建消息对话框 pagedlg 显示页面的版面对话框 printdlg 显示打印对话框 questdlg 问题对话框 uigetfile 文件检索对话框 uiputfile 为写入而显示的检索对话框 uisetcolor 从对话框交互式设置对象的 ColorSpec uisetfont 交互设置对象字体特征 warndlg 警告对话框 (返回) 13 . 矩阵函数-数值线性代数 -- 矩阵分析 cond 条件数 ( 关于逆 ) cond 条件数 ( 关于特征值 ) det 行列式 norm 矩阵范数 null 零空间 orth 矩阵的正交化空间 rank 矩阵的秩 rcond 矩阵的逆条件数 rref 去相关阶梯矩阵 ( 高斯约当消去法 ) rrefmovie 去相关阶梯矩阵的逐步演示 subspace 两个子空间的角度 , 几何上讲其实是镶嵌于一个空间中的两个 超平面的角度;物理上讲是第二次试验和第一次试验提供了多少 新信息 trace 矩阵的迹 (返回) 14 .矩阵函数-数值线性代数 -- 线性方程 chol Cholesky 分解 inv 矩阵求逆 lscov 最小二乘解 lu LU 分解 lsqnonneg 非负约束的最小线性二乘 pinv Moore-penrose 伪逆 qr 正交三角分解 (返回) 15 . 矩阵函数-数值线性代数 -- 特征值和奇异值 balance 提高特征值精度( agoodfunction ) cdf2rdf 复数对角型转换为实数对角型 eig 特征值和特征向量 gsvd 广义奇异值分解 hess 矩阵的 Hessenvberg 形式 poly 根据根给出多项式 ( 系数 ) qz 广义特征值的 QZ 分解 rsf2csf 实的 Schur 形式转换为复的 Schur 形式 schur Schur 分解 svd 奇异值分解 (返回) 16 . 矩阵函数-数值线性代数 -- 矩阵函数 expm 矩阵指数 ( 与 exp 不同 ) funm 一般矩阵函数 logm 矩阵对数 ( 对应 expm) sqrtm 矩阵平方根 (返回) 17 . 矩阵函数-数值线性代数 -- 低级函数 qrdelete 从 QR 分解中删除列 qrinsert 在 QR 分解中加入列 (返回) 18 . 创建图形用户界面 -- 用户界面对象 menu 生成菜单 uicontextmenu 创建上下文菜单 uicontrol 创建用户界面控制对象 (返回) 19 . 创建图形用户界面 -- 其他函数 dragrect 用鼠标拖动矩形 gcbo 返回正在执行回叫信息的图形对象句柄 rbbox 创建橡皮框 textwrap 对给定的用户界面控制读写返回覆盖的字符串矩阵 uiwait 控制程序的执行 waitbar 显示等待条 waitforbuttonpress 等待键或按钮的触发 (返回) 20 . 图象可视化函数 -- 基本绘图和图象函数 bar,barh 垂直和水平直方图 hist 统计频数直方图 hold 在图象窗口中保留当前图形 loglog 双对数刻度曲线图 pie 饼图 plot 绘制二维曲线 polar 极坐标图 semilogx semilogy 半对数刻度曲线图 subplot 创建子图 (返回) 21 .图象可视化函数 -- 三维绘图函数 bar3,bar3h 三维直方图 comet3 三维彗星图 cylinder 柱面图 fill3 填充的三维多边形 plot3 三维直角坐标曲线图 quiver3 三维向量场图 slice 切片图 sphere 生成球面 stem3 三维火柴杆图 waterfall 瀑布水线图 (返回) 22 . 图象可视化函数 -- 绘制标注和网络 clabel 为等高线图加数值标记 datetick 使用日期标注标记线 grid 绘制二维和三维图形网格 gtext 使用鼠标确定文本在二维视图中的位置 legend 在图形上显示图例 plotyy 双 y 轴创建图形 title 为当前轴添加标题 xlabel ylabel zlabel 标注三轴 (返回) 23 . 图象可视化函数 -- 体数据可视化 coneplot 三维向量场中将速度向量锥形表示 contourslice 在三维物体切面上绘制等高线 isocaps 计算帽端等表面几何 isonormals 计算等值表面顶点的法向 isosurface 从块体数据中提取等表面数据 reducepatch 缩减块体表面的数目 reducevolume 缩减块体数据集中元素的数目 shrinkfaces 缩减块体表面的尺寸 smooth3 使三维数据光滑化 stream2 计算二维流线数据 stream3 计算三维流线数据 streamline 画流线 surf2patch 表面数据转换为块数据 subvolume 从体数据中提取子集 (返回) 24 . 图象可视化函数 -- 表面、网格和轮廓绘制 contour 二维等高线图 contourc 低层等高线图形计算 contourf 填充二维等高线图 hidden 从一个网线图中删除消隐线 mesh meshc meshz 网线图 peaks 两变量的样本函数 surf surfc 三维阴影表面图 surfl 带有基于色图照明的表面图 trimesh 三角形网线图 trisurf 三角形表面图 (返回) 25 . 图象可视化函数 -- 域生成 griddata 数据网格化 meshgrid 为三维图形生成 XY 矩阵 (返回) 26 . 图象可视化函数 -- 专门图形绘制 area 一个二维图形的填充 box 控制轴的边界 comet 二维彗星轨迹图 compass 绘制从原点出发的向量图 ezcontour 简易等高线图绘图 ezcontourf 简易填充等高线绘图 ezmesh 简易网线图绘图 ezmeshc 简易网线 / 等高线组合绘图 ezplot 简易曲线图绘图 ezplot3 简易三维曲线图绘图 ezsurf 简易三维着色表面绘图仪 ezpolar 简易极坐标曲线图 feather 沿水平轴等间距的点发散的向量 ezsurfc 简易带等高线的三维表面图绘图 fplot 在指定区域画出一个函数的图形 (important) fill 填充二维多边形 pie3 三维饼图 pareto Pareto 图 plotmatrix 绘制离散图 pcolor 伪色绘图 rose 极坐标直方图 quiver 向量场图 ribbon 带图 stairs 阶梯曲线图 scatter 二维离散点图 scatter3 三维散点图 stem 二维火柴图 convhull 凸壳图 inpolygon 检测点是否在多边形内 dsearch 搜索最近点 polyarea 多边形的面积 voronoi Voronoi 图 (返回) 27 . 图象可视化函数 -- 视觉控制 camdolly 移动相机的位置和坐标 camlookat 确定相机位置来观察一个对象或一组对象 camorbit 绕照相机的目标旋转照相机 campan 围绕照相机的位置旋转照相机目标 campos 设置或查询照相机的位置 camproj 设置或查询投影类型 camroll 绕视轴旋转照相机 camtarget 设置或查询相机目标位置 camva 设置或查询照相机视角 camup 设置或查询照相机方向 camzoom 放大或缩小 daspect 设置或查询轴的纵横比 pbaspect 设置或查询绘图框的纵横比 view 确定视角 viewmtx 视角变换矩阵 xlim,ylim,zlim 设置或查询轴的刻度范围 camlight 在相机系统中生成或移动光源体 lightangle 在球坐标系里创建或定位一个照明对象 lighting 选择照明算法 material 控制面和块的反射比属性 (返回) 28 . 图象可视化函数 -- 颜色操作 brighten 控制色图明暗 caxis 色轴刻度 colorbar 画色轴 colordef 设置默认的属性值来显示不同的颜色方案 hsv2rgb 饱和色彩色图 HSV 向 rgb 转换 rgbplot 绘制色图 graymon 为灰度显示器设置默认的图形窗口属性 rgb2hsv rgb 转换为 hsv spinmap 旋转色图 shading 设置颜色渲染属性 surfnorm 计算和显示三维表面法向 whitebg 改变轴的背景色 colormap 设置和获得当前色图 (返回) 29 . 图象可视化函数 -- 打印函数 orient 为打印输出设置纸张的方向 print,printopt 创建硬拷贝输出 saveas 使用指定的格式保存图形或模型 (important) (返回) 30 . 图象可视化函数 -- 图形图象处理 axes 生成轴图形对象 axis 坐标轴的比例和外观 cla 清楚当前轴 clc 清除窗口中的命令 clf 清除当前窗口 close 删除指定的图形 copyobj 复制图形对象及其子对象 dragrect 用鼠标拖动矩形 drawnow 完成等待的绘图 figure 创建一个图形窗口 findobj 查找图形对象 gca 获取当前轴的句柄 gcbo 返回当前指向正在被调用的对象的句柄 gcf 获取当前图形句柄 gco 返回当前对象的句柄 get 获取对象的属性 getframe 获取图形帧 ginput 使用鼠标输入数据 image 显示图象对象 ishandle 判断图形对象是否有效 light 创建一个照明对象 line 创建线对象 newplot 确定图形对象的位置 patch 创建块图形对象 rectangle 生成二维矩形对象 refresh 重新绘制当前图形 reset 将图形对象重新设置为默认值 rotate 按指定方向旋转对象 rotate3d 使用鼠标旋转轴 selectmoveresize 选择移动调整和复制轴和用户界面控制图形对象 set 设置对象属性 surface 创建面对象 text 标注文字 uicontextmenu 创建一个上下文按钮 zoom 在二维图形上进行放大和缩小 (返回) 31 . 双重函数和非线性数值方法 dblquad 双重数值积分 fminbnd 指定区间上单变量函数的局部极小值 fminsearch 求多变量函数的最小值 fzero 单变量函数求零值 ode45,ODE23,ODE113,ODE15S,ODE23S,ODE23T,ODE23TB 解微分方程 odefile 为 ode 求解器定义一个微分方程 odeget 获取 options 结构的属性 odeset 创建或修改 ode 求解器需要的 options 结构 quad,quad8 积分的数值解 vectorize 向量化表示 (返回) 32 . 多项式和插值函数 -- 多项式 conv 卷积 deconv 反卷积 poly 求已知根的多项式 polyder 多项式求导 polyeig 多项式特征值问题 polyfit 曲线拟和 polyval 多项式求值 polyvalm 矩阵多项式求值 residue 两个多项式的比值 roots 多项式求根 (返回) 33 . 多项式和插值函数 -- 数据插值 griddata 三维网格点数据整合 interp1 一维插值 interp2 二维插值 interp3 三维插值 interpft 一维傅立叶插值 interpn 多维插值 meshgird 生成三维双数据点的 X 坐标矩阵和 Y 坐标矩阵 ndgrid 为多维函数和多维插值准备数据 spline 三次样条插值 (返回) 34 . 多项式命令补遗 poly2str() 把用向量表示的多项式转变为符号表示,例如: a= ; b=poly2str(a,'x') 结果多项式是 2x^3+3x^2+5x+6 (返回) 35 . 数组函数 -- 单元数组函数 cell 创建单元数组 cellfun 对单元数组中的每一个元素调用一个函数 cellstr 从字符数组中创建字符串单元数组 cell2struct 将单元数组转换为结构数组 celldisp 显示单元数组的内容 cellplot 图形显示单元数组 num2cell 数值数组转换为单元数组 (返回) 36 . 数组函数 -- 多维数组函数 cat 连接函数 flipdim 翻转数组 (see fliplr,flipud,rot90) ind2sub 由下标得到线性索引 ipermute 多维数组维数的逆置换 ndgrid 生成多维函数和插值数组 ndims 数组维数 permute 重新安排多维数组的行和列 reshape 整形数组 shiftdim 转换行列 squeeze 删除单一行列 sub2ind 下标的单一索引 (返回) 37 . 位操作函数、结构和对象函数 位操作 bitand 按位与 ( 两个数进行二进制的与操作 ) bitcmp 按位求补 bitor 按位或 bitmax 最大浮点整数 bitset 设置指定位的值 bitshift 逐位移动 bitget 获取指定位的值 bitxor 按位异或 结构函数 deal 把输入处理成输出 fieldnames 结构的字段名 getfield 获得结构的字段 rmfield 删除结构的字段 setfield 设置结构数组中的字段 struct 创建结构数组 struct2cell 结构数组转化为单元数组 对象函数 class 创建对象或返回对象的类 isa 检查是否属于所给定的类 (返回) 38 . 底层文件输入输出函数 fclose 关闭文件 fopen 打开文件 fread 从文件中读入二进制数据 fwrite 把二进制数据写入文件 fgetl 逐行从文件中读取数据并放弃换行符 fgets 从文件中读取行,保留换行符并把行作为字符串返回 fprintf 把格式化数据写入文件 fscanf 从文件中读取格式化数据 feof 测试文件是否结束 ferror 测试文件输入输出错误信息 frewind 文件指针归零 fseek 设置文件位置指针 ftell 获取文件位置指针 sprintf 把格式化数据写入一个字符串 sscanf 使用格式控制读取字符串 (返回) 39 . 底层文件输入输出函数 -- 特殊函数 csvread 读取逗号分隔格式的数据文件到矩阵 csvwrite 写矩阵到逗号分隔格式的数据文件 dlmread 把一个 ASCII 限定文件 ( 数据文件 ) 读入矩阵 dlmwrite 把矩阵写入到 ASCII 限定文件 ( 数据文件 ) hdf HDF 接口 ?? imfinfo 返回图形图象文件的信息 imread 读取图象 ( 到矩阵 ) imwrite 写入图象 textread 从文本文件读取格式化数据 (important) wk1read 把 Lotus123 电子表格读入矩阵 wk1write 把矩阵写入 Lotus123wk1 电子表格 xlsread 读取 excel 表格 (返回) 40 . 字符串函数 -- 常用函数 eval 运行字符串表示的表达式 char 将数组变成字符串 double 将数字字符串变成数字 (返回) 41 . 字符串函数 -- 字符串操作 deblank 去掉字符串末尾的空格 findstr 查找字符串 lower 转换为小写 strcat 字符串连接组合 strcmp 字符串比较 strcmpi 字符串比较 ( 忽略大小写 ) strjust 调整字符串排列位置 strmatch 寻找符合条件的行 strncmp 比较字符串的前 n 个字符 strrep 寻找和替代 strtok 寻找字符串中第一个空字符前边的字符串 ×× strvcat 字符串竖向连接 ( 组合 ) symvar 寻找字符串表达式中的变量 ( 除了 i,j,pi,inf,nan,eps 以及通用函数 的其他标识符 ), 如果没有找到变量则返回空单元数组 {} texlabel 将字符串转换为 Tex 格式 ( 推荐理科同学掌握 Latex) upper 大写 (返回) 42 . 字符串函数 -- 字符串和数值的转换 char 生成字符串数组 int2str 整数转换为字符串 mat2str 矩阵转换为字符串 num2str 数值转换为字符串 sprintf 格式输出字符串 sscanf 格式读入字符串 str2double 字符串转换为双精度 str2num 字符串转换为数值 (返回) 43 . 字符串函数 -- 基转换 bin2dec 把二进制转换为十进制 dec2bin 十进制转换为二进制 dec2hex 十进制转换为十六进制 hex2dec 十六进制转换为十进制 hex2num 十六进制转换为双精度 (返回) 44 . 声音处理函数 -- 常用声音函数 lin2mu 将线性音频信号转换为 mu 法则 mu2lin 将 mu 法则转换为线性音频信号 sound 把向量转换为声音 soundsc 测量数据并作为声音播放 (返回) 45 . 声音处理函数 -- 特殊声音函数 auread 读入 next/sun 声音文件 ( 后缀为 .au) auwrite 写 au 声音文件 (返回) 46 . 声音处理函数 --WAV 声音文件 waveread 读声音文件 wavewrite 写声音文件 (返回) 47 . 稀疏矩阵函数 -- 基本稀疏矩阵 spdiags 生成稀疏带状矩阵 speye 单位稀疏矩阵 sprand 随机稀疏矩阵 sprandn 正态分布的随机稀疏矩阵 sprandsym 生成稀疏对称随机矩阵 (返回) 48 . 稀疏矩阵函数 -- 满阵和稀疏矩阵的转换 find 寻找非零元素下标和值 full 稀疏矩阵转化为满阵 sparse 生成稀疏矩阵 spconvert 载入稀疏矩阵 (返回) 49 . 稀疏矩阵函数 -- 稀疏矩阵的非零元素操作 nnz 非零元素个数 nonzeros 矩阵中的非零元素 nzmax 为非零元素分配的存储空间数 spalloc 稀疏矩阵存储空间 spfun 稀疏矩阵中非零元素的函数计算 spones 非零元素全部用 1 替换 (返回) 50 . 稀疏矩阵函数 -- 稀疏矩阵的可视化 spy 稀疏矩阵的图形表示 (返回) 51 . 稀疏矩阵函数 -- 排序算法 colmmd 进行列的最小度排序 colperm 基于非零算法排序 dmperm Dulmage-Mendelsohn 分解 randperm 随机置换 symmmd 对称最小度排序 symrcm 反向 Cuthill-McKee 排序 (返回) 52 . 稀疏矩阵函数 -- 范数、条件数和秩 condest I 范数矩阵条件数 normest 2 范数估计 (返回) 53 . 稀疏矩阵函数 -- 线性方程的稀疏系统 bicg 双共扼梯度法 bicgstab 双共扼梯度稳定法 cgs 二次共扼梯度法 cholinc 不完全 Cholesky 分解 cholupdate Cholesky 分解的秩 1 修正 gmres 广义最小残差法 luinc 不完全的 LU 分解 pcg 预处理共扼梯度法 qmr Quasi_Minimal 残差法 (返回) 54 . 稀疏矩阵函数 -- 稀疏矩阵的特征值和奇异值 eigs 少数特征值和特征向量 svds 少数奇异值 (返回) 55 . 稀疏矩阵函数 -- 杂项函数 spparms 设置稀疏矩阵程序的参数 (返 回) 56 数据分析和傅立叶变换 -- 基本运算 convhull 凸壳函数 cumprod 累计积 cumsum 累计和 cumtrapz 累计梯形数值积分 delaunay Delaunay 三角化 dsearch 求最近点 ( 这是两个有趣的函数 ) factor 质数分解 inpolygon 搜索多边形内的点 max 最大元素 mean 平均值 median 数组的中间值 min 最小值 perms 向量所有排列组成矩阵 polyarea 多边形的面积 primes 生成质数列表 prod 数组元素积 sort 元素按升序排列 sortrows 将行按升序排列 std 标准差 sum 元素和 trapz 梯形数值积分 tsearch 搜索 Delaunay 三角形 var 方差 voronoi Voronoi 图 (返回) 57 数据分析和傅立叶变换 -- 有限差分 del2 Laplacian 离散 diff 差分和近似微分 gradient 数值梯度 (返回) 58 . 数据分析和傅立叶变换 -- 相关 corrcoef 相关系数 cov 协方差矩阵 xcorr 互相关系数 xcov 互协方差矩阵 xcorr2 二维互相关】 (返回) 59 . 数据分析和傅立叶变换 -- 滤波和卷积 conv 卷积和多项式相乘 conv2 二维卷积 deconv 反卷积 filter 滤波 filter2 二维数字滤波 (返回) 60 . 数据分析和傅立叶变换 -- 傅立叶变换 abs 绝对值和模 angle 相角 cplxpair 按复共扼把复数分类 fft 一维快速傅立叶变换 fft2 二维快速傅立叶变换 fftshit 将快速傅立叶变换的 DC 分量移到谱中央 ifft 以为逆快速傅立叶变换 ifft2 二维逆快速傅立叶变换 ifftn 多维逆快速傅立叶变换 ifftshift 逆 fft 平移 nextpow2 最相邻的 2 的幂 unwrap 修正相角 (返回) 61 . 数据分析和傅立叶变换 -- 向量函数 cross 向量叉积 intersect 集合交集 ismember 是否集合中元素 setdiff 集合差集 setxor 集合异或 ( 不在交集中的元素 ) union 两个集合的并 unique 返回向量作为一个集合所有元素 ( 去掉相同元素 ) (返回) 62 . 数学函数和坐标变换 -- 基本数学函数 abs 绝对值 acos 反余弦 acosh 反双曲余弦函数 acot 反余切 acoth 反双曲线余切 acsc 反余割 acsch 反双曲线余割 angle 相位角 asec 反正割 asech 反双曲线正割 asin 反正弦 asinh 反双曲线正弦 atan 反正切 atanh 反双曲线正切 atan2 四象限反正切 ceil 向正无穷方向舍入 ceil(4.3)=5 complex 复数 conj 求共扼 cos 余弦 cosh 双曲余弦 cot 余切 coth 双曲线余切 csc 余割 csch 双曲线余割 exp 指数 fix 向零舍入 floor 向负无穷大舍入 gcd 最大公约数 imag 复数的虚部 lcm 最小公倍数 log 自然对数 log2 以 2 为底的对数 log10 以 10 为底的对数 mod 模除 nchoosek 二项式系数 nchoosek(n,k)=n!/{k!(n-k)!} real 复数实部 rem 余数 round 四舍五入 sec 正割 sech 双曲线正割 sign 符号函数 sin 正弦 sinh 双曲线正弦 sqrt 平方根 tan 正切 tanh 双曲线正切 (返回) 63 . 数学函数和坐标变换 -- 特殊函数 airy airy 函数 besselh 第三类贝塞尔函数;) besseli besselk 改良型 besselh 函数 besselj bessely 贝塞尔函数 beta betainc betaln 贝塔函数 ellipj 雅克比椭圆函数 ellipke 完全椭圆积分 erf erfc erfcx erfinv 误差函数 expint 指数积分 factorial 阶乘函数 gamma gammaln gammainc 伽马函数 legendre 勒让德函数 pow2 2 的幂次 rat rats 有理逼近 (返回) 64 . 数学函数和坐标变换 -- 坐标变换 cart2pol 笛卡儿坐标变换为极坐标或圆柱坐标 cart2sph 笛卡儿坐标变换为球坐标 pol2cart 极坐标变换为笛卡儿坐标 sph2cart 球坐标变换为笛卡儿坐标 (返回) 65 . 矩阵和矩阵操作基础 -- 矩阵和数组基础 blkdiag 构造一个分块对角矩阵 eye 创建单位矩阵 linespace 产生线性间隔向量 logspace 产生对数间隔向量 ones 产生元素全为 1 的数组 rand 产生均匀分布随机数组 randn 产生正态分布随机数组 zeros 产生全零数组 (返回) 66 . 矩阵和矩阵操作基础 -- 特殊变量和常量 ans 对最近输入的反应 computer 当前计算机类型 eps 浮点精度 flops 计算浮点操作次数,现已不再常用 i 虚部单位 inf 无穷大 inputname 输入参数名 j 虚部单位 nan 非数值 nargin 输入参数的数目 nargout 输出参数的数目 ( 用户定义函数 ) pi 圆周率 realmax 最大正浮点数 realmin 最小正浮点数 varargin,varargout 返回参数数目 (matlab 函数 ) (返回) 67 . 矩阵和矩阵操作基础 -- 时间和日期 calendar 返回日历 clock 当前时间 cputime 从启动经过的 cpu 时间 date 日期 datenum 转换成连续日期数 datestr 日期字符串 datevec 日期分隔部分 eomday 一个月的日期 etime 经过的时间 now 当前的日期和时间 tic,toc 秒表定时器 weekday 星期几 (返回) 68 . 矩阵和矩阵操作基础 -- 矩阵操作 cat 把矩阵按行或列连接起来 diag 给定向量,构造对角矩阵 fliplr 矩阵左右翻转 flipud 矩阵上下翻转 repmat 复制数组 ,repmat(A,m,n) 表示把 A 复制 m 行 n 列组成新数组 reshape 按逐列来的方式重新整形数组 rot 按逆时针方向旋转 90 度 tril 返回一个矩阵的下三角矩阵 triu 返回一个矩阵的上三角矩阵 (返回) 69 . 矩阵和矩阵操作基础 -- 特殊函数矩阵 compan 返回向量的伴随矩阵 eig 矩阵特征值 gallery 测试矩阵 , 或者说大约 50 个矩阵模版 hadamard 哈达马得矩阵 hankel 汉克尔矩阵 hilb 希尔波特矩阵 invhilb 逆希尔波特矩阵 magic 魔术方阵 pascal 帕斯卡矩阵 toeplitz 托普利茨矩阵 wilkinson 维尔金森特征值测试矩阵 (返回) 70 . 运算符和逻辑函数 -- 算数运算符 + 矩阵加 - 减 * 乘 .* 数组乘 ^ 矩阵乘方 .^ 数组乘方 \ 矩阵左除 / 矩阵右除 .\ 数组左除 ./ 数组右除 kron 克罗内克张量积 (返回) 71 . 运算符和逻辑函数 -- 关系运算符 逻辑与 | 逻辑或 ~ 逻辑非 xor 逻辑异或 (返回) 72 . 运算符和逻辑函数 -- 特殊函数 ∶ 冒号 , 用于创建数组和下表 [] 方括号,构成向量或矩阵 () 圆括号,表示算术表达式优先级、放置函数参数、放置矩阵下标 {} 单元数组 (cellarray) 专用 . 句点,小数点表示、数组运算符组成部分、字段 ( 属性 ) 访问 .. 父目录,与 cd 一起使用 ... 连续三点,一行末尾表示续行 , 逗号,格开参数 ; 分号,表示矩阵一行结束或者语句末尾使得执行结果不显示 % 注释符 ' 单引号,矩阵后表示转置或者成对出现括起字符串 .' 数组转置 = 赋值 (返回) 73 . 运算符和逻辑函数 -- 逻辑函数 all 向量中是否所有分量均非零 any 是否有元素非零 exist 指定变量或文件是否存在 find 返回矩阵中非零元素的索引和置 is* is 系列,大部分根据名称可以知道功能 iscell() iscellstr() isempty() 是否空数组 isequal() 数组是否相等 isfield() 是否结构数组中的字段 isfinite() 数组中元素是否有限 isglobal() 是否全局变量 ishandle() 是否有效图形句柄 ishold() hold 命令处于 on 状态与否 isieee 是否使用 IEEE 算法 isinf() 是否无穷大 isletter() 数组元素是否是字母表中字母 islogical() 是否逻辑数组 isnan() 是否非数值数 isnumeric() 是否数值数组 isobject() 是否对象 isprime() 是否质数 isreal() 是否实数 isspace() 是否空字符 issparse() 是否是按稀疏类别存储 isstruct() 是否结构类 isstudent matlab 版本是否学生版 isunix 是否 unix 版本 isa() 指定对象是否属于指定类 logical() 把数值数组转变为逻辑数组 A(B) A 为数值数组 ,B 为逻辑数组时,按 B 索引的非零元素返回 A 中相应位置元素 mislocked() 当前文件是否锁定 (返回) simulink 的命令集 仿真命令: sim--- 仿真运行一个 simulink 模块 sldebug--- 调试一个 simulink 模块 simset--- 设置仿真参数 simget--- 获取仿真参数 线性化和整理命令: linmod--- 从连续时间系统中获取线性模型 linmod2--- 也是获取线性模型,采用高级方法 dinmod--- 从离散时间系统中获取线性模型 trim--- 为一个仿真系统寻找稳定的状态参数 构建模型命令: open_system-- 打开已有的模型 close_system-- 关闭打开的模型或模块 new_system-- 创建一个新的空模型窗口 load_system-- 加载已有的模型并使模型不可见 save_system-- 保存一个打开的模型 add_block-- 添加一个新的模块 add_line-- 添加一条线(两个模块之间的连线) delete_block-- 删除一个模块 delete_line-- 删除一根线 find_system-- 查找一个模块 hilite_system-- 使一个模块醒目显示 replace_block-- 用一个新模块代替已有的模块 set_param-- 为模型或模块设置参数 get_param-- 获取模块或模型的参数 add_param-- 为一个模型添加用户自定义的字符串参数 delete_param-- 从一个模型中删除一个用户自定义的参数 bdclose-- 关闭一个 simulink 窗口 bdroot-- 根层次下的模块名字 gcb-- 获取当前模块的名字 gcbh-- 获取当前模块的句柄 gcs-- 获取当前系统的名字 getfullname-- 获取一个模块的完全路径名 slupdate-- 将 1.x 的模块升级为 3.x 的模块 addterms-- 为未连接的端口添加 terminators 模块 boolean-- 将数值数组转化为布尔值 slhelp--simulink 的用户向导或者模块帮助 封装命令 hasmask-- 检查已有模块是否封装 hasmaskdlg-- 检查已有模块是否有封装的对话框 hasmaskicon-- 检查已有模块是否有封装的图标 iconedit-- 使用 ginput 函数来设计模块图标 maskpopups-- 返回并改变封装模块的弹出菜单项 movemask-- 重建内置封装模块为封装的子模块 诊断命令: sllastdiagnostic-- 上一次诊断信息 sllasterror-- 上一次错误信息 sllastwarning-- 上一次警告信息 sldiagnostics-- 为一个模型获取模块的数目和编译状态 硬拷贝和打印命令: frameedit-- 编辑打印画面 print-- 将 simulink 系统打印成图片,或将图片保存为 m 文件 printopt-- 打印机默认设置 orient-- 设置纸张的方向 (返回) 75 . rtw 相关的命令 rtwgen- 从一个模型中创建一个 rtw 文件 (model.rtw) ,用此函数可以指定一些 rtw 的属 性设置 tlc- 调用目标语言编译器 rtwbuild- 对一个模型调用 rtw 的 build 程序
个人分类: 编制程序|7867 次阅读|3 个评论
[转载]latex 基本命令集
dalilijiang 2010-12-31 10:54
這是個人從網上搜集的一些資料 1. 多个 blankspace 等于一个 blankspace ,多个空行 (line) 等于一个空行,一个空行效果等于另起一段,并不会真正出现一个空行。 2. 九大保留字符的输入 # $ % ^ _ { } 前面加 \ 就可以,如 \$ \ 要用命令 $\backslash$ 3.latex 命令的书写要求 $a\pm b___FCKpd___1nbsp; $a\pm3b___FCKpd___1nbsp; 命令 \pm 后面的空格、数字或者任何非字母的字符都标志着该命令的结束。 如何在命令后产生一个空格: {} 可以保护后面的空格。 Get \LaTeX{} Started. 一些命令 (\footnote 或 \phantom) 内嵌于 \caption 或 \section 时会失效,这时加上 \protect 可以保证不失效。 \section{Higer Order Difference Equations \footnote{See James(2000)}} %\footnote 失效 \section{Higer Order Difference Equations \protect\footnote{See James(2000)}} 注意 \protect 只保护紧跟其后的命令本身,命令的参数并不受到保护,如果要保护参数,需要在参数前加 \protect. 其他一些脆弱命令还有: All commands that have an optional argument are fragile. Environments delimited by \begin ... \end are fragile. Display math environment delimited by \ Math environment \( ... \) , However, $ ... $ is robust Line breaks, \\ . \item commands . \footnote commands . 4. 如何打印命令 ( 将程序命令打印出来而不让命令执行 ) \begin{verbatim} Get \LaTeX{} Started. \end{verbatim} \verb*|like this :-) | 5. 添加程序注释的两种方法 %Get \LaTeX{} Started. \begin{comment} Get \LaTeX{} Started. \end{comment} 第二个方法要在导言区添加 \usepackage{verbatim} 6.document class 有哪些常见类型 article, proc, minimal, report, book, slides 7. 页面式样 \pagestyle{plain} \pagestyle{headings} \pagestyle{empty} \thispagestyle{empty} % 将当前页面的式样改为 empty. 8. 大型文档中插入一些子文档的方法 \include{filename} % 想让插入的子文档在新的一页开始显示 ; \input{filename} % 插入的子文档直接显示,不用新开一页。 \includeonly{file1,file2,file3} % 在导言区使用。只有在此列出的子文档才会在正文中被插入。 9. 快速检查语法 \usepackage{syntonly} \syntaxonly 10. 分行分页的方法 \\ or \newline : 另起一行,但不另起一段。 \\* : 另起一行,但禁止分页。 \newpage: 另起一页。 11. 确定单词断点位置 \hyphenation{FORTRAN Hy-phen-a-tion} % 只有在 - 出现的地方才能断,没有 - 的单词不能断,必须整体出现。 un\-derstood % 在正文中输入 understood 的时候,插入 \- 告诉 latex 这里可以分开。 12. 几个单词整体出现 \mbox{0116 291 2319} % 让这几位数字作为一个整体出现在一行,不在不同的行显示。 \fbox{0116 291 2319} % 功能和 \mbox 一样,同时还在这个整体周围加框。 13. 特殊符号 引号 ``well understood `physical' formula'' 双引号要用两个重音号 `` 和两单引号 '' 前后表示。 破折号 daughter-in-law, X-rated\\ pages 13--67\\ yes---or no? \\ $0$, $1$ and $-1$ 波浪号 ~ \~understood \~{}physical $\sim$formula 效果各不同 温度度数 $-30\,^{\circ}\mathrm{C}$ $-30$\textcelsius % 这一种要加载 \usepackage{textcomp} 欧元符号 \texteuro 100 \euro 100 $ 需加载 \usepackage {eurosym} 或者 \usepackage {eurosym} \EURtm $ 需加载 \usepackage{marvosym} 省略号 直接用 ... 不行,要用 \ldots, 文本中位于下部的省略号 $\cdots___FCKpd___1nbsp;%math mode, 数学符号中的位于中部的省略号 $\cdot___FCKpd___1nbsp; %math mode, 数学符号中位于中部的一个点号。 连字 不管你信不信,在 latex 中, ff 和 f{}f 显示的结果是不同的。 ff 是两个连在一起的整体符号。 14. 调整单词间隔 \frenchspacing 15. 论文的标题、章节目等安排 \title{My Dissertation} % 在后面正文中用 \maketitle 生成标题 \author{George Bush, Allen Greenspan} \date{\today} \tableofcontents % 在此位置插入章节目录 \listoffigures % 在此位置插入图形目录 \listoftables % 在此位置插入表格目录 \part{XXX} % 产生单独的一页,例如 Part I XXX \chapter{Introduction to SAS} % 章 1 只有 report 和 book 才有章的划分。 \section{My God} % 节 1.1 \subsection{...} % 目 1.1.1 \subsubsection{...} % 以下不再编号 \paragraph{...} \subparagraph{...} \section*{My God} % 加了 * 后,该节就不出现在目录中,也不编号。 \appendix % 该命令说明后面开始附录,下面的 chapter 命令采用字母编号 \chapter{Mathematical analysis} %Appendix A Mathematical analysis \section{Set Theory} %A.1 Set Theory 16.book 风格的文档 \frontmatter % 紧跟着 \begin{document} 命令出现,该命令启用罗马数字编页码。 \mainmatter % 出现在第一章前面,该命令启用阿拉伯数字编页码。 \appendix % 标志书中附录材料的开始。该命令后的各章序号改用字母标记。 \backmatter % 应该插入书中最后一部分内容的前面,如参考文献和索引 17. 交叉引用法 \label{sec:my1} % 放在在节、子节、图、表或定理后面,作为后面需要引用的标记 \ref{sec:my1} % 引用标志词 sec:my1 那里的节、子节、图、表或定理的序号 \pageref{sec:my1} % 引用标志词 sec:my1 所在的页码 18. 脚注、页边注和尾注 \footnote{type the text here.} \marginpar{type the text here.} 尾注的方法 \usepackage{endnotes} % 加载尾注宏包 \endnote{type the text here.} % 在需要尾注的地方添加 \theendnotes % 指明尾注内容在文中该地方出现。 19. 强调 \underline{text} % 下划线强调 \emph{text} % 斜体强调 20. 三种枚举方法 Itemize 、 Enumerate 和 Description \flushleft \begin{enumerate} \item The strategy: \begin{itemize} \item First,look silly.\item Second,be smart.\end{itemize} \item The result: \begin{description} \item You'll be smart.\item You'll be stupid.\end{description} \end{enumerate} 21. 文本的对齐和居中 \begin{flushleft} 。。。。。。 \end{flushleft} \begin{flushright} 。。。。。。 \end{flushright} \begin{center} 。。。。。。 \end{center} 22. 引文、诗歌、摘要 \begin{quote} 。。。。。。 \end{quote} % 一次少量引用 \begin{quotation} 。。。。。。 \end{quotation} % 一次大量引用 \begin{verse} 。。。。。。 \end{verse} % 引用诗歌,排成韵律风格,每一行后用 \\ 断行。 \begin{abstract} 。。。。。。 \end{abstract} % 学术论文的摘要。 23. 表格 \begin{tabular}{|r||l @{ + } c@{ . }rrr@{ * }c|c|} \hline \hline Position Club Games W T L Goals Points\\ \hline 1 Amesville Rockets 33 19 13 1 66:31 51:15 \\ 2 Borden Comets 33 18 9 6 65:37 45:21 \\ ... ..... .. .. .. .. ... ... \\ 17 Quincy Giants 33 7 5 21 40:89 19:47 \\ 18 Ralston Regulars 33 3 11 19 37:74 17:49\\ \hline \hline \end{tabular} 另一种更加复杂的表,可以随意画横线,几列共用一个标签 \begin{tabular}{|r|l||rrr|r@{ : }l|r@{ : }l||c|} \hline \multicolumn{10}{|c|}{\bfseries {\itshape Table 1}. 1st Regional Soccer League --- Final Results 2002/03}\\ \hline \itshape Position \itshape Club \itshape W \itshape T \itshape L \multicolumn{2}{|c|}{\itshape Goals} \multicolumn{2}{|c||}{\itshape Points} \itshape Remarks\\ \hline \hline 1 Amesville Rockets 19 13 1 6631 5115 League Champs\\ \hline 2 Borden Comets 18 9 6 6537 4521 Trophy Winners\\ \hline ... ..... .. .. .. .. ... ... ... ...\\ \hline 17 Quincy Giants 7 5 21 4089 1947 Candidates \\ \cline{1-9} 18 Ralston Regulars 3 11 19 3774 1749 for Losers\\ \hline \end{tabular} 24. 浮动体 浮动体就是一个整体在正文中上下浮动,寻找合适的放置位置,通常为了避免一个整体对象遭遇分页等尴尬问题。例如不想让表格一半在上一页,一半在下一页。将上面表格作为浮动体处理,浮动体放置许可规则 表示忽略内部参数 ,首先优先放在这儿 here ,其次是 bottom ,再次放在 top ,然后考虑放在一个 floating page 。下面是表和图的浮动体例子。其中 caption 命令添加标题, 内的是简单标题,在 \listoffigures 和 \listoftables 中出现, {...} 内的是长标题,在正文中显示。 \begin{table} \caption {1st Regional Soccer League --- Final Results.} \begin{tabular}{|r|l||rrr|r@{ : }l|r@{ : }l||c|} \hline \multicolumn{10}{|c|}{\bfseries {\itshape Table 1}. 1st Regional Soccer League --- Final Results 2002/03}\\ \hline \itshape Position \itshape Club \itshape W \itshape T \itshape L \multicolumn{2}{|c|}{\itshape Goals} \multicolumn{2}{|c||}{\itshape Points} \itshape Remarks\\ \hline \hline 1 Amesville Rockets 19 13 1 6631 5115 League Champs\\ \hline 2 Borden Comets 18 9 6 6537 4521 Trophy Winners\\ \hline ... ..... .. .. .. .. ... ... ... ...\\ \hline 17 Quincy Giants 7 5 21 4089 1947 Candidates \\ \cline{1-9} 18 Ralston Regulars 3 11 19 3774 1749 for Losers\\ \hline \end{tabular} \end{table} Figure \ref{white} is an example of Pop-Art. \begin{figure} \makebox {\framebox {\rule{0pt}{5cm}}} \caption {Five by Five in Centimetres.\label{white}} \end{figure} 浮动体的放置顺序遵循先来先放的原则。有时等待序列中浮动体太多,命令 \clearpage 可以让等待结束,立刻新开一页放置所有等待中的浮动体。 在 LaTeX 文档中插入图片 http://hepg.sdu.edu.cn/Service/tips/latex/latexfig.html 25. 如何使用中文字体 先在导言区加载 \usepackage{CJK} 然后在正文使用中文的地方用 \begin{CJK*}{GBK}{song} 中文或者英文 \end{CJK*} 加 * 和不加 * 的区别在于对 ~ 的处理不同。加了 * 后,汉字之间的空格用 ~ 代替。不加 * ,汉字之间空格用英文正常空格。常用的其他字体还有: fs (仿宋)、 kai (楷体)、 hei (黑体)、 li (隶书)、 you (幼圆)。命令中的 GBK 是指中文内码,还可以用 GB 和 BIG5 (繁体字),前提是相应的字库设置是正确的。 如果在中间想要将宋体改变仿宋,就可以使用: \CJKfamily{GBK}{fs} 26. 段首缩进 latex 默认每一段段首缩进,但是正文第一段不缩进。如果要缩进,采用下面两种方法: (1). 加载 \usepackage{indentfirst} 的方法。 (2). 在该段首用 \parindent 来专门控制缩进,例如: \setlength{\parindent}{4em} % 放置在段首,它设置为当前字号的 4 个大写字母 M 的宽度,大约正好是 4 个汉字的宽度 27. 行距和段距的控制 \setlength{\baselineskip}{1.8em} % 行距控制为 1.8 个 M ,直到下次出现修改为止。 1.8em 是中文常见行距。 \setlength{\parskip}{1ex} % 段距控制为 1 个 x ,直到下次出现修改为止。 28. 页眉页脚 \usepackage{fancyhdr} \pagestyle{fancy} 29. 页面设置 \usepackage {geometry} 30. 如何设置字体颜色 \documentclass {report}\usepackage{color}\definecolor{Blue}{rgb}{0.3,0.3,0.9}\begin{document} Hello! {\color{Blue}{World}}! \end{document} 左对齐 \begin{flushleft} \end{flushleft} 右对齐 \begin{flushright} \end{flushright} 列举环境 \begin{itemize} \end{itemize} \begin{enumerate} \end{enumerate} 保持环境 \verb| | \begin{verbatim} \end{verbatim} 小页环境 \begin{minipage}{size} \end{minipage} 诗歌环境 \begin{verse} \end{verse} 浮动表格环境 \begin{table} \end{table} 固定表格环境 \begin{tabular} \end{tabular} 浮动图片环境 \begin{figure} \end{figure} 10 种字号命令 {\tiny } {\scriptsize } {\footnotesize } {\small } {\normalsize } {\large } {\Large } {\LARGE } {\huge } {\Huge } 英文字体命令 {\rm } 罗马字体 {\bf } 黑体 {\it } 意大利字体 {\sc } 小号大写字体 {\sl } 斜体 {\tt } 打字机字体 {\cal } 花体 {\em } 强调型字体 几种数字的格式 \arabic{} \roman{} \Roman{} \alph{} \Alph{} 章节命令 部分命令 \part{} 章命令 \chapter{} 节命令 \section{} \subsection{} \subsubsection{} \subsubsubsection{} 附录命令 \appendix{} 使用上面所说的命令,处理一般的文字文档应该没多大问题了。但是一篇文章中还有三个很重要的部分:公式,图片,表格现在我们还没法处理。 下面就来讲一讲。 要在 Latex 文档中加载图片,必须要包括 graphicx 宏包。 下面即是典型代码: \begin{figure} \begin{center} \includegraphics {1.eps}% 就在前面括号中写图片名 \renewcommand{\figurename}{ 图 } \caption{} \label{} \end{center} \end{figure} 这段代码功能是把名为 1.eps 的图片调进来,放在浮动图片环境中,并居中放置。 \includegraphics {1.eps} 中的 \includegraphics 即为调用图片的命令。 [] 中的参数用于指定加载图片后图片显示的宽度和高度。 \renewcommand{\figurename}{ 图 } 用于将其默认的标号(为 figure )改为图 \caption{} 给这幅图片取一个名字或作一段说明用于显示出来。 \label{} 中也写一个名字用来标明这幅图片,方便前面或后面的交叉引用。 插入表格 插入表格没有图片步骤多,但也要注意一些细节问题。 \begin{table} \centering \renewcommand{\tablename}{ 表 } \caption{} \begin{tabular}{|l|l|l|} \hline 1 2 3\\ \hline 8.2 7.8 12.7\\ 75.7 152.8 249.9\\ \hline \end{tabular} \end{table} 这段代码用来生成一个 3 行 3 列的浮动表格,并左右置中放置。 \begin{tabular}{|l|l|l|} 中的 |l|l|l| 表示有三列,列与列之间用竖线隔开(共四根竖线)。 \hline 表示画一根横线。
个人分类: Latex|8493 次阅读|1 个评论
[转载]vi 命令的使用(备查)
william1985 2010-9-21 16:39
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。 1、vi的基本概念   基本上 vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1) 命令行模式command mode)   控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。 2) 插入模式(Insert mode)   只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。 3) 底行模式(last line mode)   将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号等。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。 2、 vi的基本操作 a) 进入vi  在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:    $ vi myfile   不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧! b) 切换至插入模式(Insert mode)编辑文件   在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。 c) Insert 的切换   您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。 d) 退出vi及保存文件   在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如: : w filename (输入 「w filename」将文章以指定的文件名filename保存) : wq (输入「wq」,存盘并退出vi) : q! (输入q!, 不存盘强制退出vi) 3、命令行模式(command mode)功能键 1). 插入模式 按「i」切换进入插入模式「insert mode」,按i进入插入模式后是从光标当前位置开始输入文件;   按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;   按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。 2). 从插入模式切换为命令行模式 按「ESC」键。 3). 移动光标   vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。   按「ctrl」+「b」:屏幕往后移动一页。   按「ctrl」+ 「f」:屏幕往前移动一页。   按「ctrl」+「u」:屏幕往后移动半页。   按「ctrl」+「d」:屏幕往前移动半页。   按数字「0」:移到文章的开头。   按「G」:移动到文章的最后。   按「$」:移动到光标所在行的行尾。   按「^」:移动到光标所在行的行首   按「w」:光标跳到下个字的开头   按「e」:光标跳到下个字的字尾   按「b」:光标回到上个字的开头   按「#l」:光标移到该行的第#个位置,如:5l,56l。 4). 删除文字   「x」:每按一次,删除光标所在位置的后面一个字符。   「#x」:例如,「6x」表示删除光标所在位置的后面6个字符。   「X」:大写的X,每按一次,删除光标所在位置的前面一个字符。   「#X」:例如,「20X」表示删除光标所在位置的前面20个字符。   「dd」:删除光标所在行。   「#dd」:从光标所在行开始删除#行 5). 复制   「yw」:将光标所在之处到字尾的字符复制到缓冲区中。   「#yw」:复制#个字到缓冲区   「yy」:复制光标所在行到缓冲区。   「#yy」:例如,「6yy」表示拷贝从光标所在的该行往下数6行文字。   「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与y有关的复制命令都必须与p配合才能完成复制与粘贴功能。 6). 替换   「r」:替换光标所在处的字符。   「R」:替换光标所到之处的字符,直到按下「ESC」键为止。 7). 回复上一次操作   「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次u可以执行多次回复。 8). 更改   「cw」:更改光标所在处的字到字尾处   「c#w」:例如,「c3w」表示更改3个字 9). 跳至指定的行   「ctrl」+「g」列出光标所在行的行号。   「#G」:例如,「15G」,表示移动光标至文章的第15行行首。 4、Last line mode下命令简介   在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command mode」下后,再按「:」冒号即可进入「last line mode」。 A) 列出行号  「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。 B) 跳到文件中的某一行  「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。 C) 查找字符  「/关键字」:先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。  「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。 D) 保存文件  「w」:在冒号输入字母「w」就可以将文件保存起来。 E) 离开vi  「q」:按「q」就是退出,如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。  「qw」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。 5、vi命令列表 1、下表列出命令模式下的一些键的功能: h 左移光标一个字符 l 右移光标一个字符 k 光标上移一行 j 光标下移一行 ^ 光标移动至行首 0 数字0,光标移至文章的开头 G 光标移至文章的最后 $ 光标移动至行尾 Ctrl+f 向前翻屏 Ctrl+b 向后翻屏 Ctrl+d 向前翻半屏 Ctrl+u 向后翻半屏 i 在光标位置前插入字符 a 在光标所在位置的后一个字符开始增加 o 插入新的一行,从行首开始输入 ESC 从输入状态退至命令状态 x 删除光标后面的字符 #x 删除光标后的#个字符 X (大写X),删除光标前面的字符 #X 删除光标前面的#个字符 dd 删除光标所在的行 #dd 删除从光标所在行数的#行 yw 复制光标所在位置的一个字 #yw 复制光标所在位置的#个字 yy 复制光标所在位置的一行 #yy 复制从光标所在行数的#行 p 粘贴 u 取消操作 cw 更改光标所在位置的一个字 #cw 更改光标所在位置的#个字 2、下表列出行命令模式下的一些指令 w filename 储存正在编辑的文件为filename wq filename 储存正在编辑的文件为 filename,并退出vi q! 放弃所有修改,退出vi set nu 显示行号 / 或? 查找,在/后输入要查找的内容 n 与/或?一起使用,如果查找的内容不是想要找的关键字,按n或向后(与/联用)或向前(与?联用)继续查找,直到找到为止。 对于第一次用vi,有几点注意要提醒一下: 1、用vi打开文件后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。 2、编辑好后,需从插入模式切换为命令行模式才能对文件进行保存,切换方法:按「ESC」键。 3、保存并退出文件:在命令模式下输入:wq即可!(别忘了wq前面的:)
个人分类: 计算机技术|2523 次阅读|0 个评论
XP的几个常用命令,看你知道几个?
guodanhuai 2009-9-24 14:35
开始运行输入的命令集锦 mstsc--远程桌面连接 logoff--注销命令 rononce -p --15秒关机 tsshutdn--60秒倒计时关机命令 iexpress--木马捆绑工具,系统自带 tourstart--xp简介(安装完成后出现的漫游xp程序) winchat--XP自带局域网聊天 sndrec32--录音机 Nslookup--IP地址侦测器 explorer--打开资源管理器 lusrmgr.msc--本机用户和组 services.msc---本地服务设置 oobe/msoobe /a--检查XP是否激活 notepad---打开记事本 cleanmgr--**整理 net start messenger--开始信使服务 compmgmt.msc---计算机管理 net stop messenger---停止信使服务 conf----启动 netmeeting dvdplay---DVD播放器 charmap---启动字符映射表 diskmgmt.msc---磁盘管理实用程序 calc----启动计算器 dfrg.msc--磁盘碎片整理程序 chkdsk.exe---Chkdsk磁盘检查 devmgmt.msc--- 设备管理器 regsvr32 /u *.dll--停止dll文件运行 drwtsn32---- 系统医生 rononce -p --15秒关机 dxdiag----检查DirectX信息 regedt32--注册表编辑器 Msconfig.exe---系统配置实用程序 rsop.msc--组策略结果集 mem.exe---显示内存使用情况 regedit.exe--注册表 progman---程序管理器 winmsd----系统信息 perfmon.msc--计算机性能监测程序 winver----检查Windows版本 sfc /scannow---扫描错误并复原 taskmgr---任务管理器(2000/xp/2003) wmimgmt.msc--打开windows管理体系结构(WMI) wupdmgr---windows更新程序 w脚本---windows脚本宿主设置 write-----写字板 winmsd----系统信息 wiaacmgr--扫描仪和照相机向导 mem.exe---显示内存使用情况 Msconfig.exe---系统配置实用程序 mplayer2--简易widnows media player mspaint---画图板 mplayer2--媒体播放机 magnify---放大镜实用程序 mmc-----打开控制台 mobsync---同步命令 dxdiag----检查DirectX信息 drwtsn32---- 系统医生 devmgmt.msc--- 设备管理器 dfrg.msc--磁盘碎片整理程序 diskmgmt.msc---磁盘管理实用程序 dcomcnfg--打开系统组件服务 ddeshare--打开DDE共享设置 dvdplay---DVD播放器 net stop messenger---停止信使服务 net start messenger--开始信使服务 notepad---打开记事本 nslookup--网络管理的工具向导 ntbackup--系统备份和还原 narrator--屏幕讲述人 ntmsmgr.msc--移动存储管理器 ntmsoprq.msc---移动存储管理员操作请求 netstat -an--(TC)命令检查接口 syncapp---创建一个公文包 sysedit---系统配置编辑器 sigverif--文件签名验证程序 sndrec32--录音机 shrpubw---创建共享文件夹 secpol.msc---本地安全策略 syskey----系统加密,一旦加密就不能解开,保护windows xp系统的双重密码 services.msc---本地服务设置 Sndvol32--音量控制程序 sfc.exe---系统文件检查器 sfc /scannow---windows文件保护 taskmgr---任务管理器 eventvwr--事件查看器 eudcedit--造字程序 explorer--打开资源管理器 packager--对象包装程序 perfmon.msc--计算机性能监测程序 progman---程序管理器 regedit.exe--注册表 rsop.msc--组策略结果集 regedt32--注册表编辑器 regsvr32 /u *.dll--停止dll文件运行 regsvr32 /u zipfldr.dll----取消ZIP支持 cmd.exe---CMD命令提示符 chkdsk.exe---Chkdsk磁盘检查 certmgr.msc--证书管理实用程序 calc----启动计算器 charmap---启动字符映射表 cliconfg--SQL SERVER 客户端网络实用程序 Clipbrd---剪贴板查看器 conf----启动netmeeting compmgmt.msc---计算机管理 cleanmgr--**整理 ciadv.msc----索引服务程序 osk-----打开屏幕键盘 odbcad32--ODBC数据源管理器 oobe/msoobe /a--检查XP是否激活 lusrmgr.msc--本机用户和组 Nslookup--IP地址侦测器 fsmgmt.msc---共享文件夹管理器 utilman---辅助工具管理器 gpedit.msc---组策略 (orgined from http://blog.csdn.net/cesium/archive/2007/05/08/1601079.aspx)
个人分类: Technology|3138 次阅读|0 个评论
CAD全套键盘输入命令(转载)
melody2009 2009-8-28 17:50
CAD全套键盘输入命令 (一)字母类 1、对象特性 ADC, *ADCENTER(设计中心Ctrl+2) CH, MO *PROPERTIES(修改特性Ctrl+1) MA, *MATCHPROP(属性匹配) ST, *STYLE(文字样式) COL, *COLOR(设置颜色) LA, *LAYER(图层****作) LT, *LINETYPE(线形) LTS, *LTSCALE(线形比例) LW, *LWEIGHT (线宽) UN, *UNITS(图形单位) ATT, *ATTDEF(属性定义) ATE, *ATTEDIT(编辑属性) BO, *BOUNDARY(边界创建,包括创建闭 合多段线和面域) AL, *ALIGN(对齐) EXIT, *QUIT(退出) EXP, *EXPORT(输出其它格式文件) IMP, *IMP ORT(输入文件) OP,PR *OPTIONS(自定义CAD设置) PRINT,*PLOT(打印) PU, *PURGE(清除**) R, *REDRAW(重新生成) REN, *RENAME(重命名) SN, *SNAP(捕捉栅格) DS, *DSETTINGS(设置极轴追踪) OS, *OSNAP(设置捕捉模式) PRE, *PREVIEW(打印预览) TO, *TOOLBAR(工具栏) V, *VIEW(命名视图) AA, *AREA(面积) DI, *DIST(距离) LI, *LIST(显示图形数据信息) 2、AUTO CAD快捷绘图命令: PO, *POINT(点) L, *LINE(直线) XL, *XLINE(射线)构造线 PL, *PLINE(多段线) ML, *MLINE(多线) SPL, *SPLINE(样条曲线) POL, *POLYGON(正多边形) REC, *RECTANGLE(矩形) C, *CIRCLE(圆) A, *ARC(圆弧) DO, *DONUT(圆环) EL, *ELLIPSE(椭圆) REG, *REGION(面域) MT, *MTEXT(多行文本) T, *MTEXT(多行文本) B, *BLOCK(块定义) I, *INSERT(插入块) W, *WBLOCK(定义块文件) DIV, *DIVIDE(等分) H, *BHATCH(填充) 3、AUTO CAD快捷修改命令: CO, *COPY(复制) MI, *MIRROR(镜像) AR, *ARRAY(阵列) O, *OFFSET(偏移) RO, *ROTATE(旋转) M, *MOVE(移动) E, DEL键 *ERASE(删除) X, *EXPLODE(分解) TR, *TRIM(修剪) EX, *EXTEND(延伸) S, *STRETCH(拉伸) LEN, *LENGTHEN(直线拉长) SC, *SCALE(比例缩放) BR, *BREAK(打断) CHA, *CHAMFER(倒角) F, *FILLET(倒圆角) PE, *PEDIT(多段线编辑) ED, *DDEDIT(修改文本) 4、AUTO CAD快捷视窗缩放: P, *PAN(平移) Z+空格+空格, *实时缩放 Z, *局部放大 Z+P, *返回上一视图 Z+E,*显示全图   5、AUTO CAD快捷尺寸标注: DLI, *DIMLINEAR(直线标注) DAL, *DIMALIGNED(对齐标注) DRA, *DIMRADIUS(半径标注) DDI, *DIMDIAMETER(直径标注) DAN, *DIMANGULAR(角度标注) DCE, *DIMCENTER(中心标注) DOR, *DIMORDINATE(点标注) TOL, *TOLERANCE(标注形位公差) LE, *QLEADER(快速引出标注) DBA, *DIMBASELINE(基线标注) DCO, *DIMCONTINUE(连续标注) D, *DIMSTYLE(标注样式) DED, *DIMEDIT(编辑标注) DOV, *DIMOVERRIDE(替换标注系统变量) (二)AUTO CAD快捷常用CTRL快捷键 【CTRL】+1 *PROPERTIES(修改特性) 【CTRL】+2 *ADCENTER(设计中心) 【CTRL】+O *OPEN(打开文件) 【CTRL】+N、M *NEW(新建文件) 【CTRL】+P *PRINT(打印文件) 【CTRL】+S *SAVE(保存文件) 【CTRL】+Z *UNDO(放弃) 【CTRL】+X *CUTCLIP(剪切) 【CTRL】+C *COPYCLIP(复制) 【CTRL】+V *PASTECLIP(粘贴) 【CTRL】+B *SNAP(栅格捕捉) 【CTRL】+F *OSNAP(对象捕捉) 【CTRL】+G *GRID(栅格) 【CTRL】+L *ORTHO(正交) 【CTRL】+W *(对象追踪) 【CTRL】+U *(极轴) (三)AUTO CAD快捷常用功能键 【F1】 *HELP(帮助) F4 数值化控制 【F2】 *(文本窗口) F5等轴测平面切换 【F3】 *OSNAP(对象捕捉) F6 控制状态行上坐 标的显示方式 【F7】 *GRIP(栅格) F9栅格捕捉模式控制 【F8】 *ORTHO(正交) F10 极轴模式控制 COL, *COLOR(设置颜色) F11对象追踪 LA, *LAYER(图层****作) LT, *LINETYPE(线形) LTS, *LTSCALE(线形比例) LW, *LWEIGHT (线宽) UN, *UNITS(图形单位) ATT, *ATTDEF(属性定义) ATE, *ATTEDIT(编辑属性) BO, *BOUNDARY(边界创建,包括创建闭合 多段线和面域) AL, *ALIGN(对齐) EXIT, *QUIT(退出) EXP, *EXPORT(输出其它格式文件) IMP, *IMP ORT(输入文件) OP,PR *OPTIONS(自定义CAD设置) PRINT, *PLOT(打印) PU, *PURGE(清除**) RE, *REDRAW(重新生成) REN, *RENAME(重命名) SN, *SNAP(捕捉栅格) DS, *DSETTINGS(设置极轴追踪) OS, *OSNAP(设置捕捉模式) PRE, *PREVIEW(打印预览) TO, *TOOLBAR(工具栏) V, *VIEW(命名视图) AA, *AREA(面积) DI, *DIST(距离) LI, *LIST(显示图形数据信息) END(端点) MID(中点) CEN(圆心) NOD(节点) QUA(象限点) INT(交点) INS(插入点) PER(垂足) TAN(切点) NEA(最近点) QUI(快速) APP(外观交点) EXT(尺寸线) PAR(平行)   FRAM -正交偏移捕捉 EXI - 延伸捕捉指定点 L -TT 指定临时对象追踪点 EXP - 输出数据 DY -关对象捕捉 DIMARC-弧长 DCE, DIMCENTER- 圆心 MLE,MLEADER - 多重引线 建模 UNI, -UNION 并集 SU, -SUBTRACT 差集 IN, -INTERSECT 交集 CAD中特殊符号的输入 %%130 一级钢符号 %%150 Ⅰ %%131 二级钢符号 %%151 Ⅱ %%132 三级钢符号 %%152 Ⅲ %%133 四级钢符号 %%153 Ⅳ %%134 特殊钢筋 %%154 Ⅴ %%135 L型钢 %%155 Ⅵ %%136 H型钢 %%156 Ⅶ %%137 槽型钢 %%157 Ⅷ %%138 工字钢 %%158 Ⅸ %%140 上标文字开 %%159 Ⅹ %%141 上标文字关 %%200 圆中有一个字符的特殊文字的开始,如① %%142 下标文字开 %%201 圆中有一个字符的特殊文字的结束 %%143 下标文字关 %%202 圆中有二个字符的特殊文字的开始 %%144 文字放大1.25倍 %%203 圆中有二个字符的特殊文字的结束 %%145 文字缩小0.8倍 %%204 圆中有三个字符的特殊文字的开始 %%146 小于等于号 %%205 圆中有三个字符的特殊文字的结束 %%147 大于等于号 %%u 带下划线字体 %%o 带上划线字体 %%p 正负号 %%c 直径符号 %%d 温度符号 快捷命令的定义 全面已经提到,AutoCAD所有定义的快捷命令都保存ACAD.PGP文件中。ACAD.PGP是一个纯文本文件,用户可以使用ASCⅡ文本编辑器(如DOS下的EDIT)或直接使用WINDOWS附件中的记事本来进行编辑。用户可以自行添加一些Auto CAD命令的快捷方式到文件中。 通常,快捷命令使用一个或两个易于记忆的字母,并用它来取代命令全名。快捷命令定义格式如下: 快捷命令名称, * 命令全名 如: CO , * COPY 即键入快捷命令后,再键入一个逗号和快捷命令所替代的命令全称。AutoCAD的命令必须用一个星号作为前缀。
个人分类: 未分类|8241 次阅读|0 个评论
STATA 数据处理的命令一览
zhao1198 2009-8-24 04:41
Stata Programs forData Analysis This page describes Stata programs developed by the UCLA ATS Statistical Consulting Group for data analysis. You can download any of these programs from within Stata using the findit command. For example, to download the cmeans command you can type findit cmeans (see How can I used the findit command to search for programs and get additional help? for more information about using findit ). ANOVA Tools daoneway One-way Discriminant Analysis anovacontrast How can I do ANOVA contrasts in Stata? fhcomp Fisher-Hayter pairwise comparisons fpower Anova Power Analysis fstar F* test for testing differences in means, like ANOVA nonadd Tukey test for nonadditivity omega2 Computes omega squared after ANOVA parcord2 Parallel coordinate plots simanova Simulation of ANOVA simpower Power simulation for ANOVA sme Computes tests of simple main effects tukeyhsd Tukey's HSD pairwise comparisons wtest W test for testing differences in means, like ANOVA Correlation and Regression Tools aipe Accuracy in parameter estimation bwls Band-aid weighted least squares canred Canonical correlation redundancy analysis (needs Stata 9) collin Collinearity diagnostics fautil Factor analysis utilities hadiplot Potential versus Residul Plot and Hadi regression influence measure hinflu6 Computes Hadi measure of regression influence iplot Index plots after estimation lvr2dplot Leverage vs. Residual Squared with Cook's D mvtest Module to perform multivariate F tests partcorr Partial semipartial correlation. pathreg Path analysis using ols regression powerreg Power analysis for Linear regression models protab Predicted proportions following logit transformation postgr3 Post estimation graphs and predicted values sgmediation Sobel-Goodman mediation tests