﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-C++ Coder-随笔分类-软件使用技巧</title><link>http://www.cppblog.com/jackdongy/category/20109.html</link><description>HCP高性能计算架构，实现，编译器指令优化，算法优化，
  LLVM   CLANG   OpenCL   CUDA   OpenACC    C++AMP   OpenMP   MPI</description><language>zh-cn</language><lastBuildDate>Fri, 28 Dec 2012 11:14:03 GMT</lastBuildDate><pubDate>Fri, 28 Dec 2012 11:14:03 GMT</pubDate><ttl>60</ttl><item><title>手把手教你把Vim改装成一个IDE编程环境(图文)</title><link>http://www.cppblog.com/jackdongy/archive/2012/12/28/196748.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Fri, 28 Dec 2012 09:36:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/12/28/196748.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/196748.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/12/28/196748.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/196748.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/196748.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: http://blog.csdn.net/wooin/article/details/1858917vim编程idebuffersearchtags手把手教你把Vim改装成一个IDE编程环境(图文)By:吴垠Date:2007-09-07Version:0.5Email:lazy.fox.wu#gmail.comHomep...&nbsp;&nbsp;<a href='http://www.cppblog.com/jackdongy/archive/2012/12/28/196748.html'>阅读全文</a><img src ="http://www.cppblog.com/jackdongy/aggbug/196748.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-12-28 17:36 <a href="http://www.cppblog.com/jackdongy/archive/2012/12/28/196748.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ubuntu 12.10 下安装 nvidia 显卡驱动的问题  </title><link>http://www.cppblog.com/jackdongy/archive/2012/12/26/196673.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Wed, 26 Dec 2012 04:45:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/12/26/196673.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/196673.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/12/26/196673.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/196673.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/196673.html</trackback:ping><description><![CDATA[<a href="http://blog.163.com/hotman_x.vip/blog/static/48950133201211483326248/">http://blog.163.com/hotman_x.vip/blog/static/48950133201211483326248/</a><br /><br />和所有 Linux 发行版一样，Ubuntu 默认使用 nouveau 开源驱动。话说这个驱动还不错的，甚至能够支持一些三维游戏。不过，既然有更好的 nvidia 官方驱动，弃之不用也说不过去。虽然官方驱动是闭源的，但既然买了 nvidia 的显卡，当然就有使用这个软件的权利。<br />简要的说，从 Ubuntu 11.10 开始，直到 Ubuntu 12.04，运用官方驱动是很简单的事，无论从&#8220;软件中心&#8221;用鼠标点击安装，还是用一条命令 sudo apt-get install nvidia-current 来安装，都是简单惬意的事。<br /><br />然而，在 Ubuntu 12.10 下，出问题了&#8230;&#8230;安装完毕之后，重启，登录，得到了一个没有任何菜单、工具条的纯桌面。好在可以用 Ctrl-Alt T 来启动一个终端&#8212;&#8212;我知道 Ctrl-Alt F1 之类的快捷键，但是，由于中文 locale 设置，在 tty 终端那里，你会得到大量的菱形，它们原本应该是汉字&#8212;&#8212;既然有指挥电脑的地方，那么还有救，呵呵。当年在 Fedora 下一直是手工安装 n 卡驱动的，那个安装过程&#8230;&#8230;很明显就是一个编译的过程！谷歌了一下，果然，需要 kernel 的源代码和头文件！<br /><br />如果你已经走到了这一步，如下操作（以 curent 版为例，如果你安装的其它版本，比如 current-updates 之类，请自行更改命令）。＃ 开头的行是注释，请注意 Ubuntu 不允许 root 登录，不会有 root 提示符的（刚写完就想起来，回来修正一下，想得到 root 提示符也很简单的：sudo bash）。<br /><br /># 首先卸载驱动<br />$ sudo apt-get remove --purge nvidia-current<br /><br /># 安装 kernel 源代码、头文件<br />$ sudo apt-get install linux-source linux-headers-generic<br /><br /># 重新安装驱动<br />$ sudo apt-get install nvidia-current<br /><br /># 通常你会用到的，建议把这个也装上<br />$ sudo apt-get install nvidia-settings<br /><br />#重启<br />$ sudo reboot<img src ="http://www.cppblog.com/jackdongy/aggbug/196673.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-12-26 12:45 <a href="http://www.cppblog.com/jackdongy/archive/2012/12/26/196673.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用U盘安装windows 8 </title><link>http://www.cppblog.com/jackdongy/archive/2012/11/22/195580.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Thu, 22 Nov 2012 15:16:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/11/22/195580.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/195580.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/11/22/195580.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/195580.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/195580.html</trackback:ping><description><![CDATA[<div>http://diybbs.zol.com.cn/1/34036_828.html</div><div>Windows8是微软全新的操作系统，肯定有很多IT发烧友都迫不及待的想一睹全新Windows的风采，今天我们就首先来说说如何安装windows8。<br />　　<br />　　作为全新的Windows，安装的方法有很多种，大家都知道，windows8为平板<a href="http://detail.zol.com.cn/desktop_pc_index/subcate27_list_1.html" style="text-decoration:underline" target="_blank">电脑</a>做了改进和优化，这不津有人会问如果是平板电脑，或者超薄<a href="http://detail.zol.com.cn/notebook_index/subcate16_list_1.html" style="text-decoration:underline" target="_blank">笔记本</a>电脑，没有<a href="http://detail.zol.com.cn/dvdrw_index/subcate96_list_1.html" style="text-decoration:underline" target="_blank">光驱</a>，怎么安装呢？<br />　　<br />　　像Windows7一样，Windows8同样可以使用U盘作为安装介质，具体安装步骤如下：<br />　　<br />　　1、&nbsp;通过windowsUSBDVDTool制作U盘启动盘<br />　　<br />　　a)&nbsp;首先下载windowsUSBDVDTool，体制为：<br />　　<br />　　h&nbsp;t&nbsp;t&nbsp;p&nbsp;:&nbsp;//images2.store.microsoft.com/prod/clustera/framework/w7udt/1.0/en-us/Windows7-USB-DVD-tool.exe<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_018.jpg"  alt="" /><br />　　<br />　　b)&nbsp;下载完成后双击打开，单击&#8220;Browse&#8221;选择Windows8的ISO镜像，并单击下一步。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_017.jpg"  alt="" /><br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_016.jpg"  alt="" /><br />　　<br />　　c)&nbsp;单击&#8220;USBdevice&#8221;，并选择你U盘的盘符，U盘容量应不小于4Gb。之后选择&#8220;Begincopying&#8221;<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_015.jpg"  alt="" /><br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_014.jpg"  alt="" /><br />　　<br />　　d)&nbsp;在选择EraseUSBDevice后，等待程序制作完成即可。<br />　　<br />　　2、&nbsp;使用命令提示符制作U盘启动盘<br />　　<br />　　如果不方便从网上下载U盘制作工具，也可以用命令提示符的方法安装。<br />　　<br />　　a)&nbsp;使用管理员模式运行&#8220;命令提示符&#8221;<br />　　<br />　　b)&nbsp;键入diskpart并回车，启动磁盘管理工具。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_013.jpg"  alt="" /><br />　　<br />　　c)&nbsp;使用listdisk命令查看U盘的磁盘ID，如图，此台计算机上U盘的ID为&#8220;磁盘3&#8221;<br />　　<br />　　d)&nbsp;使用selectdisk3命令选中U盘。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_012.jpg"  alt="" /><br />　　<br />　　e)&nbsp;使用clean命令清除磁盘上所有内容。<br />　　<br />　　f)&nbsp;使用createpartitionprimary为U盘创建一个主分区，并使用selectpartition1选择这个分区<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_011.jpg"  alt="" /><br />　　<br />　　g)&nbsp;使用formatfs=ntfsquick命令为这个U盘快速格式化成NTFS文件系统。<br />　　<br />　　h)&nbsp;格式化完成后，使用active命令设置当前磁盘为活动状态。<br />　　<br />　　3、&nbsp;将windows8安装文件复制到U盘中。将windows8安装光盘中的所有文件复制到U盘中即可；或将Windows8安装镜像（iso）使用第三方工具打开后，复制其所有内容至U盘中。<br />　　<br />　　4、&nbsp;安装windows8<br />　　<br />　　a)&nbsp;将BIOS设置为U盘启动，并重启电脑，注意有UEFI设置的电脑，需要打开安全功能才能正常安装windows8.<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_010.jpg"  alt="" /><br />　　<br />　　b)&nbsp;与光盘安装相同，U盘引导首先会出现Betta鱼界面<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_009.jpg"  alt="" /><br />　　<br />　　c)&nbsp;选择所在国家及语言、输入法等设置，单击下一步开始安装。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_008.jpg"  alt="" /><br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_007.jpg"  alt="" /><br />　　<br />　　d)&nbsp;在输入完产品密钥、接受许可协议后，选择&#8220;自定义：仅安装Windows（高级）&#8221;。建议全新安装Windows8而不使用升级安装。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_006.jpg"  alt="" /><br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_005.jpg"  alt="" /><br />　　<br />　　e)&nbsp;在选择安装磁盘时，系统会默认划分出一个350Mb大小的系统保留分区，用于保存启动设置和Windows故障修复。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_004.jpg"  alt="" /><br />　　<br />　　f)&nbsp;单击下一步开始安装Windows，此过程不需要用户参与，安装程序会自动在若干次重启后完成安装。<br />　　<br />　　5、&nbsp;首次使用Windows8的设置<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_003.jpg"  alt="" /><br />　　<br />　　a)&nbsp;像以往的Windows操作系统一样，Windows8也是有这样的设置的。第一个设置就是为我们的计算机起个名字，注意，这不是用户的名字哦，而是你电脑的名字。输入完成后单击下一步即可。<br />　　<br />　　b)&nbsp;由于Windows8默认MicrosoftID登录，所以在设置用户名之前，系统会首先要求链接网络。当然如果没有网络连接的话，跳过这一步就可以了。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_002.jpg"  alt="" /><br />　　<br />　　c)&nbsp;如果在第二步你已经成功连接了网络，为了更好的体验Windows8，建议大家使用WindowsLiveID登录。输入你WindowsLiveID的用户名和密码就可以了。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_001.jpg"  alt="" /><br />　　<br />　　d)&nbsp;如果在第二步你没有连接到网络，或者你不希望使用WindowsLiveID登录，可以点击屏幕下侧的&#8220;不想用Microsoft帐户登录&#8221;，之后和以前版本的Windows一样，输入用户名、密码、密码提示后就可以了。<br />　　<br />　　<img name="LazyloadImg" src="http://img170.poco.cn/mypoco/myphoto/20120329/20/54544303201203292034412128059407279_000.jpg"  alt="" /><br />　　<br />　　单击完成后，让我们尽情体验windows8之美吧！制作的安装U盘可以无限次使用哦。</div><img src ="http://www.cppblog.com/jackdongy/aggbug/195580.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-11-22 23:16 <a href="http://www.cppblog.com/jackdongy/archive/2012/11/22/195580.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>7Z命令行</title><link>http://www.cppblog.com/jackdongy/archive/2012/11/05/194550.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Mon, 05 Nov 2012 06:38:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/11/05/194550.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/194550.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/11/05/194550.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/194550.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/194550.html</trackback:ping><description><![CDATA[<div id="cnblogs_post_body">
<p><strong>7z.exe在CMD窗口的使用说明如下：</strong></p>
<p>7-Zip (A) 4.57 Copyright (c) 1999-2007 Igor Pavlov 2007-12-06</p>
<p>Usage: 7za &lt;command&gt; [&lt;switches&gt;...] &lt;archive_name&gt; [&lt;file_names&gt;...]<br />[&lt;@listfiles...&gt;]</p>
<p>&lt;Commands&gt;<br />a: Add files to archive<br />b: Benchmark<br />d: Delete files from archive<br />e: Extract files from archive (without using directory names)<br />l: List contents of archive<br />t: Test integrity of archive<br />u: Update files to archive<br />x: eXtract files with full paths<br />&lt;Switches&gt;<br />-ai[r[-|0]]{@listfile|!wildcard}: Include archives<br />-ax[r[-|0]]{@listfile|!wildcard}: eXclude archives<br />-bd: Disable percentage indicator<br />-i[r[-|0]]{@listfile|!wildcard}: Include filenames<br />-m{Parameters}: set compression Method<br />-o{Directory}: set Output directory<br />-p{Password}: set Password<br />-r[-|0]: Recurse subdirectories<br />-scs{UTF-8 | WIN | DOS}: set charset for list files<br />-sfx[{name}]: Create SFX archive<br />-si[{name}]: read data from stdin<br />-slt: show technical information for l (List) command<br />-so: write data to stdout<br />-ssc[-]: set sensitive case mode<br />-ssw: compress shared files<br />-t{Type}: Set type of archive<br />-v{Size}[b|k|m|g]: Create volumes<br />-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName]: Update options<br />-w[{path}]: assign Work directory. Empty path means a temporary directory<br />-x[r[-|0]]]{@listfile|!wildcard}: eXclude filenames<br />-y: assume Yes on all queries</p>
<p><strong>中文使用说明如下：</strong></p>
<p><span style="font-size: 12px; font-family: 黑体">语法<br /><span style="display: none">2 U: }* K- X4 U# @&nbsp;&nbsp; p% Q2 E/ x</span>7z &lt;命令行&gt; [&lt;选项&gt;...] &lt;基本档案名称&gt; [&lt;参数变量&gt;...]</span><span style="font-size: 12px"><br /></span><span style="display: none"># N, x! L1 @8 c# f# A( {- H: c1 k</span><span style="font-size: 12px; font-family: 黑体">7z &lt;command&gt; [&lt;switch&gt;...] &lt;base_archive_name&gt; [&lt;arguments&gt;...]<span style="font-size: 0px; color: #fafafa">* g8 T1 {- l2 e) P% T' V; A</span><br />&lt;参数变量&gt; ::= &lt;选项&gt; | &lt;通配符&gt; | &lt;<span class="t_tag" href="http://www.cnblogs.com/qanholas/admin/tag.php?name=%CE%C4%BC%FE" onxxxxx="tagshow(event)">文件</span>名&gt; | &lt;文件列表&gt;<br /><span style="display: none">0 \4 K+ d( V+ \9 b7 n9 Z! n7 m</span>&lt;选项&gt;::= &lt;选项标记&gt;&lt;选项字符&gt;[&lt;选项&gt;]<br /><span style="display: none">3 Y3 P&nbsp;&nbsp; u3 ]7 z</span>&lt;选项标记&gt; ::= '/' | '-' <br /><span style="display: none">2 T9 p3 F+ k2 m+ i</span>&lt;文件列表&gt; ::= @{文件名}</span><span style="font-size: 12px; font-family: 黑体"><span style="font-size: 0px; color: #fafafa">( @4 _; F&nbsp;&nbsp; r6 j. t+ a5 @</span><br /><br /><span style="display: none">( h) M. w' f: W: B" n</span>&lt;arguments&gt; ::= &lt;switch&gt; | &lt;wildcard&gt; | &lt;filename&gt; | &lt;list_file&gt;<br /><span style="display: none">) E" E* I9 a3 L' \' H5 U</span>&lt;switch&gt;::= &lt;switch_symbol&gt;&lt;switch_characters&gt;[&lt;option&gt;]<br /><span style="display: none">5 ]# @$ ^+ h% E( h8 B&amp; o</span>&lt;switch_symbol&gt; ::= '/' | '-' <br /><span style="display: none">7 ?7 T" n&nbsp;&nbsp; v. b; ^( z</span>&lt;list_file&gt; ::= @{filename}<br /><span style="display: none">8 i/ v&nbsp;&nbsp; Z4 S3 {# ?</span>在方括号内的表达式(&#8220;[&#8221; 和 &#8220;]&#8221;之间的字符)是可选的。<span style="font-size: 0px; color: #fafafa">' ?2 k0 k/ m* f. Q$ c4 h</span><br />在书名号内的表达式(&#8220;&lt;&#8221; 和 &#8220;&gt;&#8221;之间的字符)是必须替换的表达式(而且要去掉括号)。<br /><span style="display: none">, F8 d* c0 \# u5 l0 p</span>表达式<br /><span style="display: none">5 S; l2 |, I1 v/ T</span>expression1 | expression2 | ... | expressionN<span style="font-size: 0px; color: #fafafa">* R- s: |- P/ n&amp; m9 C</span><br />命令行 及 选项 使用大写或小写字母都可以。<br /><span style="display: none">$ C+ b&nbsp;&nbsp; `' R6 r/ O6 ~0 l. q! P# A- W</span>首个命令行必须是无选项的参数变量。<br /><span style="display: none">&amp; x- x- e! h( T( _; l. w) D</span>选项及其它文件名的输入顺序可以打乱。<br /><span style="display: none">% }* U" G6 f5 b/ u1 h2 W* t</span>带有空格的通配符或文件名必须加上引号：<br /><span style="display: none">&amp; E. _# e( t9 Q0 q/ t</span>"Dir\Program files\*"<span style="font-size: 0px; color: #fafafa">+ r+ u2 k&nbsp;&nbsp; b' Z&amp; U. n</span><br />Dir\"Program files"\*<span style="font-size: 0px; color: #fafafa">. M&nbsp;&nbsp; R&nbsp;&nbsp; V3 S/ s</span><br />通配符是一个键盘字符，例如星号(*)或问号(?)，当执行添加文件、释放文件、选定文件、<span class="t_tag" href="http://www.cnblogs.com/qanholas/admin/tag.php?name=%C9%BE%B3%FD" onxxxxx="tagshow(event)">删除</span>文件等操作时，您可以使用它来代表一个或多个字符。当您不知道真正字符或者不想键入完整名称时，常常使用通配符代替一个或多个字符。<br /><span style="display: none">' b&nbsp;&nbsp; s0 b, V" `' T8 G' K</span>7-Zip 支持和 <span class="t_tag" href="http://www.cnblogs.com/qanholas/admin/tag.php?name=Windows" onxxxxx="tagshow(event)">Windows</span> 相类似的通配符：<br /><span style="display: none">. |&nbsp;&nbsp; r) x% ?9 a! A% r</span>&#8220;*&#8221;可以使用星号代替零个或多个字符。 <br /><span style="display: none">" T! c' q: o3 v+ ]8 u" F</span>&#8220;?&#8221;可以用问号代替名称中的单个字符。 <br /><span style="display: none">2 p9 F% Y1 ]4 o; H2 W4 ]</span>7-Zip 使用的并不是系统处理通配符的默认方法，因而 7-Zip 不支持其它通配符规则，在系统中 *.* 相当于所有文件。而 7-Zip 会将其视为任何扩展名的全部文件。所以，要处理所有文件您必须使用 * 通配符。<br /><span style="display: none">&amp; t' b7 R&nbsp;&nbsp; U4 L! u1 `. m</span>示例：<br /><span style="display: none">( r, |* b' R# h* \</span>*.txt 这样会查找(添加、选定&#8230;&#8230;)所有扩展名是&#8220;.txt&#8221;的文件 <span style="font-size: 0px; color: #fafafa">/ z9 x0 }' d, B, s# z</span><br />?a* 这样会查找(添加、选定&#8230;&#8230;)所有第二个字母为&#8220;a&#8221;的文件 <span style="font-size: 0px; color: #fafafa">/ f+ ^8 N7 S% b. b' Q</span><br />*1* 这样会查找(添加、选定&#8230;&#8230;)所有包含&#8220;1&#8221;的文件 <span style="font-size: 0px; color: #fafafa">3 W# Q" f&nbsp;&nbsp; C* h&nbsp;&nbsp; E6 n</span><br />*.*.* 这样会查找(添加、选定&#8230;&#8230;)所有包含&#8220;.&#8221;的双扩展名文件 <br /><span style="display: none">5 _, W&amp; N( ]2 P* Z! Z' S</span>如果在命令行中没有文件名，系统将会使用默认通配符&#8220;*&#8221;。<span style="font-size: 0px; color: #fafafa">* K. J# R7 u) w7 n3 A6 ?</span><br />档案文件中通配符及文件名的使用限制：<br /><span style="display: none">/ A( C# e1 B4 b* ]1 B</span>通配符及文件名不能包括系统盘符或网址。每个通配符及文件名路径将被视为从盘符到当前目录的完整路径/从压缩档案的根目录算起的完整路径。换句话说，路径的开始部分(在首个斜线(&#8220;\&#8221;)之前的字符)必须是某个名称或通配符。 <span style="font-size: 0px; color: #fafafa">1 [% e: w/ V/ g, l" t0 N</span><br />通配符及文件名不能以斜线(&#8220;\&#8221;)结尾。 <br /><span style="display: none">% t( K0 ?! L. K: L* U8 n5 G6 t</span>通配符只可以在完整路径的最后一部分中出现。 <span style="font-size: 0px; color: #fafafa">' M) Q' ~9 v2 O; m2 I9 _$ G2 D, U" b</span><br />示例：<br /><span style="display: none">* n. o9 Y* u. f&nbsp;&nbsp; N- q# @% T</span>Dir1\*.cpp 正确 <br /><span style="display: none">' o. P$ _&nbsp;&nbsp; i&amp; D7 Y8 d</span>c:\Dir1\*.cpp 错误：路径中不能包括盘符 <br /><span style="display: none">! c" A. z7 f) T4 H6 Y</span>Dir1\Dir2\g?.txt 正确 <span style="font-size: 0px; color: #fafafa">; i7 Q+ P) e2 F8 g</span><br />Dir1\D?r2\file1.txt 错误：只有在以路径的最后一部分才能使用通配符 <br /><span style="display: none">; M( k3 A! C+ \+ L8 C- C# W6 q</span>文件列表<span style="font-size: 0px; color: #fafafa">: l&nbsp;&nbsp; Z$ }; P4 O</span><br />您可以使用文件列表来对要操作的文件进行批量操作。在文件中的文件名必须用空格或另起一行隔开。(如使用空格格开，每一个文件必须加引号)。<br /><span style="display: none">- e1 A" |( j' h( y) T$ p</span>7-Zip 命令行支持多个文件列表同时操作。<span style="font-size: 0px; color: #fafafa">2 Y+ k2 G9 |2 g: p. x2 M' Z</span><br />举个例子，这里有一个文件列表&#8220;listfile.txt&#8221;包含下列内容：<span style="font-size: 0px; color: #fafafa">" I! Z) }. C7 k/ H4 g; u' @+ Q</span><br />"My programs\*.cpp"<span style="font-size: 0px; color: #fafafa">5 v; @* F) U5 ]$ k3 H6 J! b* N</span><br />Src\*.cpp<br /><span style="display: none">% ^&nbsp;&nbsp; C&nbsp;&nbsp; }8 b) ?; I7 w</span>那么我们可以输入命令：<br /><span style="display: none">) t, u4 \" G4 |1 s</span>7z a -tzip archive.zip @listfile.txt<br /><span style="display: none">9 @&nbsp;&nbsp; h/ N. X' Q</span>将&#8220;My programs&#8221;及&#8220;Src&#8221;目录中所有扩展名为&#8220;cpp&#8221;的文件添加到压缩档案&#8220;archive.zip&#8221;中。<br /><span style="display: none">&amp; }7 _" |7 x8 N</span><br /><span style="display: none">) ^9 ?, s: b) C&amp; f&nbsp;&nbsp; M9 F</span><br /><span style="display: none">6 Y! V3 f* A&nbsp;&nbsp; h+ R. X* a" B3 q</span>命令行<br /><span style="display: none">+ \- g+ r7 t$ S6 X2 c</span>命令行的命令不分大小写。<br /><span style="display: none">6 V. I: [5 H% ]1 Y4 ~+ I7 j; f</span>更多有关命令行的详细内容请参阅 语法。<br /><span style="display: none">6 Q3 L/ k' p* _( Z; X</span>命令要点参考<br /><span style="display: none"># R3 h4 r/ ^- X</span>命令 作用说明 <br /><span style="display: none">( M7 t) Y8 F. z! q</span>a 添加 <span style="font-size: 0px; color: #fafafa">. M% Z1 A/ G8 y: S9 d* c</span><br />d 删除 <span style="font-size: 0px; color: #fafafa">: j9 _&nbsp;&nbsp; _2 ~$ W, W2 m: U</span><br />e 释放 <span style="font-size: 0px; color: #fafafa">- Y7 {! I&nbsp;&nbsp; _( K$ y</span><br />l 列表 <span style="font-size: 0px; color: #fafafa">4 w&amp; j5 K&nbsp;&nbsp; X4 }+ Y# A) d* k: S</span><br />t 测试 <span style="font-size: 0px; color: #fafafa">. h: w&amp; C4 ~- P* o+ @</span><br />u 更新 <br /><span style="display: none">; g: ?+ R9 N' v. ~6 F9 }: y</span>x 完整路径释放 <br /><span style="display: none">; w* a( q+ p+ F</span><span style="font-size: 0px; color: #fafafa">&amp; `- O( ]&nbsp;&nbsp; M. T' k&nbsp;&nbsp; x0 `</span><br />命令行选项<span style="font-size: 0px; color: #fafafa">/ }1 o6 h9 v9 B2 V9 |9 q' R. y</span><br />语法<span style="font-size: 0px; color: #fafafa">&nbsp;&nbsp; V* Y, `+ p( K5 b</span><br />&lt;选项&gt;::= &lt;选项_符号&gt;&lt;选项_字符&gt;[&lt;选项&gt;]<br /><span style="display: none">. m# e- \9 [$ r( F</span>&lt;选项_符号&gt; ::= '/' | '-' <br /><span style="display: none">- L$ X5 m# O' d3 V</span>&amp;ltswitch&gt;::= &lt;switch_symbol&gt;&lt;switch_characters&gt;[&lt;option&gt;]<br /><span style="display: none">* u9 h2 \6 Y9 f</span>&lt;switch_symbol&gt; ::= '/' | '-'<br /><span style="display: none">3 D; h. [9 g0 W3 N( d</span>在命令行中，一个完整的选项由指定的选项、连字符(-)或斜线(/)组成，而且选项的符号不能使用缩写。<span style="font-size: 0px; color: #fafafa">, q$ P! D- o" H&nbsp;&nbsp; b" w/ Y3 _# D</span><br />选项名称不区分大小写。而一部分选项会包括参数变量，它们是需要区分大小写的。<br /><span style="display: none">, [7 {6 e! b; m. E2 L1 k5 U% l% b</span>选项可以使用在命令行中的任何位置。<span style="font-size: 0px; color: #fafafa">#</span></span><span style="font-size: 12px; font-family: 黑体"><span style="display: none">( h) M. w' f: W: B" n</span><span style="display: none">) E" E* I9 a3 L' \' H5 U</span><span style="display: none">5 ]# @$ ^+ h% E( h8 B&amp; o</span><span style="display: none">7 ?7 T" n&nbsp;&nbsp; v. b; ^( z</span><span style="display: none">8 i/ v&nbsp;&nbsp; Z4 S3 {# ?</span><span style="display: none">, F8 d* c0 \# u5 l0 p</span><span style="display: none">5 S; l2 |, I1 v/ T</span><span style="display: none">$ C+ b&nbsp;&nbsp; `' R6 r/ O6 ~0 l. q! P# A- W</span><span style="display: none">&amp; x- x- e! h( T( _; l. w) D</span><span style="display: none">% }* U" G6 f5 b/ u1 h2 W* t</span><span style="display: none">&amp; E. _# e( t9 Q0 q/ t</span><span style="display: none">' b&nbsp;&nbsp; s0 b, V" `' T8 G' K</span><span style="display: none">. |&nbsp;&nbsp; r) x% ?9 a! A% r</span><span style="display: none">" T! c' q: o3 v+ ]8 u" F</span><span style="display: none">2 p9 F% Y1 ]4 o; H2 W4 ]</span><span style="display: none">&amp; t' b7 R&nbsp;&nbsp; U4 L! u1 `. m</span><span style="display: none">( r, |* b' R# h* \</span><span style="display: none">5 _, W&amp; N( ]2 P* Z! Z' S</span><span style="display: none">/ A( C# e1 B4 b* ]1 B</span><span style="display: none">% t( K0 ?! L. K: L* U8 n5 G6 t</span><span style="display: none">* n. o9 Y* u. f&nbsp;&nbsp; N- q# @% T</span><span style="display: none">' o. P$ _&nbsp;&nbsp; i&amp; D7 Y8 d</span><span style="display: none">! c" A. z7 f) T4 H6 Y</span><span style="display: none">; M( k3 A! C+ \+ L8 C- C# W6 q</span><span style="display: none">- e1 A" |( j' h( y) T$ p</span><span style="display: none">% ^&nbsp;&nbsp; C&nbsp;&nbsp; }8 b) ?; I7 w</span><span style="display: none">) t, u4 \" G4 |1 s</span><span style="display: none">9 @&nbsp;&nbsp; h/ N. X' Q</span><span style="display: none">&amp; }7 _" |7 x8 N</span><span style="display: none">) ^9 ?, s: b) C&amp; f&nbsp;&nbsp; M9 F</span><span style="display: none">6 Y! V3 f* A&nbsp;&nbsp; h+ R. X* a" B3 q</span><span style="display: none">+ \- g+ r7 t$ S6 X2 c</span><span style="display: none">6 V. I: [5 H% ]1 Y4 ~+ I7 j; f</span><span style="display: none">6 Q3 L/ k' p* _( Z; X</span><span style="display: none"># R3 h4 r/ ^- X</span><span style="display: none">( M7 t) Y8 F. z! q</span><span style="display: none">; g: ?+ R9 N' v. ~6 F9 }: y</span><span style="display: none">; w* a( q+ p+ F</span><span style="display: none">. m# e- \9 [$ r( F</span><span style="display: none">- L$ X5 m# O' d3 V</span><span style="display: none">* u9 h2 \6 Y9 f</span><span style="display: none">3 D; h. [9 g0 W3 N( d</span><span style="display: none">, [7 {6 e! b; m. E2 L1 k5 U% l% b</span><span style="font-size: 0px; color: #fafafa">#</span></span></p>
<p>&nbsp;</p>
<div>（<a href="http://greegree2005.spaces.live.com/Blog/cns%2187D7E5BF255C41AF%21125.entry" target="_blank"><span style="text-decoration: underline"><span style="color: #5fa207" color="#5fa207">参考greegree的文章</span></span></a>）<strong>先给出一个压缩文件的例子：</strong><br /><br /><span style="color: #ff0000">7z a -t7z archive.7z *.exe *.dll -m0=BCJ -m1=LZMA:d=21 -ms -mmt<br /><br /></span>&nbsp;&nbsp;&nbsp; <span style="color: #ff0000">添加 *.exe 及 *.dll 文件到固实压缩档案 archive.7z。使用 LZMA 压缩算法、2 MB 字典大小及 BCJ 转换器。压缩将开启多线程优化(如果可用)。<br /><br /></span></div>
<div><span style="color: #000000">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">-ms 默认设置固实模式。在创建固实压缩档案模式中，它把压缩档案中的所有文件都当成一个连续数据流来看待。通常情况下，固实压缩可增加压缩比，特别是在添加大量小文件的时候<br />-mmt 默认开启多线程模式。&nbsp;&nbsp;&nbsp; <br />以上两条倒是可以理解，但是&#8220;-m0=BCJ -m1=LZMA:d=21 &#8221;又该如何解释？<br />按照给出的中文的文档说明：<br />-m0=BCJ -- 第一个备选的压缩算法为BCJ<br />-m1=LZMA:d=21 -- 第二个备选的压缩算法为LZMA，指定字典大小为默认的21(2MB的1次方)2MB。</span></div>
<p>&nbsp;</p>
<div><strong>如果：想要使用最大化压缩，可以使用下面的参数选项：<br /><br /></strong></div>
<div>&nbsp;&nbsp;&nbsp; <span style="color: #0000ff">7z a -t7z DriverTest_1.7z "I:\t\t1\*" -mx=9 -ms=200m -mf -mhc -mhcf -m0=LZMA:a=2:d=25:mf=bt4b:fb=64 -mmt -r<br /><br /></span>-t7z -- 压缩文件的格式为7z<br />-mx=9 -ms=200m -mf -mhc -mhcf -m0=LZMA:a=2:d=25:mf=bt4b:fb=64 -mmt<br />-- 指定压缩算法选项<br />-mx=9 -- 设置压缩等级为极限压缩（默认为：LZMA 最大算法、32 MB 字典大小、BT4b Match finder、单词大小为 64、BCJ2 过滤器）<br />-ms=200m -- 开启固实模式，设置固实数据流大小为200MB。<br />-mf -- 开启可执行文件压缩过滤器。<br />-mhc -- 开启档案文件头压缩。<br />-mhcf -- 开启档案文件头完全压缩。我所使用的7z版本为4.42&gt;2.30。<br />-m0=LZMA:a=2:d=25:mf=bt4b:fb=64<br />-- 第一个备选压缩算法为LZMA，压缩等级为最大压缩，LZMA算法使用的字典大小为25(2MB的5次方)32MB，算法的匹配器为bt4b(所需要内存为d&#215;9.5 + 34 MB)，压缩算法的紧凑字节为最大模式的64字节。<br />-mmt -- 开启多线程模式。<br />-r -- 递归到所有的子目录。<br /><br />
<p><strong><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px">7z</span></span></span><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px">命令</span></span></span></strong><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px"><strong>解压文件的例子：</strong>解压File.7z文件到目录Mydir。</span></span></span></p>
<p><span style="color: #0000ff"><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px">7z x "d:\File.7z" -y -aos -o"d:\Mydir"</span></span></span></span></p>
<p><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px">参数说明：</span></span></span></p>
<p><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px">x:完整路径下解压文件<br /><br />-y:所有确认选项都默认为是（即不出现确认提示）</span></span></span></p>
<p>-aos:跳过已存在的文件</p>
<p><span style="font-size: 10.5pt"><span style="font-size: 10.5pt"><span style="font-size: 12px">-o:设置输出目录</span></span></span></p></div>
<p><strong>关于内存的使用：</strong><br /><br />一般来说，WindowsXP至少使用80~160MB的内存，为了保证系统的运行正常，还要留够32MB的剩余物理内存。<br />所以如果是512MB的内存，那么7z压缩所使用的内存为（512-32-160）320MB，使用bt4b(d*9.5+34MB)，所以d=32MB。<br />如果是256MB的内存，那么7z压缩所使用的内存为（256-32-120）104MB，使用bt4b(d*9.5+34MB)，所以d=8MB。<br />由此可见，在WindowsXP的图形界面下要想得到更大的压缩比，或者扩大物理内存的容量，或者可以采用在DOS下运行32位程序的方法；否则无论你的虚拟内存或者系统的磁盘缓存设置得再大，只能看见硬盘灯狂闪得交换页面文件。<br />通常情况下，较大的字典文件能提供较高的压缩比。但是在压缩和解压缩的时候会比较慢而且需要较多的物理内存：压缩时所使用的物理内存约为字典文件的10倍，解压缩时所使用的物理内存约等于字典文件大小。<br /><br />语法格式：（详细情况见7-zip帮助文件，看得头晕可以跳过，用到再学） <br />7z &lt;command&gt; [&lt;switch&gt;...] &lt;base_archive_name&gt; [&lt;arguments&gt;...] <br /><br />7z.exe的每个命令都有不同的参数&lt;switch&gt;,请看帮助文件 <br />&lt;base_archive_name&gt;为压缩包名称 <br />&lt;arguments&gt;为文件名称，支持通配符或文件列表 <br />a: 添加文件的压缩包，或者创建新的压缩包。 <br /><br />d: 从压缩包中删除文件。 <br /><br />e: 从压缩包中提取。 <br /><br />t: 测试压缩包的是否出错。 <br /><br />u: 更新压缩包中的文件。 <br />其中，7z是至命令行压缩解压程序7z.exe，&lt;command&gt;是7z.exe包含的命令，列举如下： <br /><br />a： Adds files to archive. 添加至压缩包 <br />a命令可用参数： <br />-i (Include) <br />-m (Method) <br />-p (Set Password) <br />-r (Recurse) <br />-sfx (create SFX) <br />-si (use StdIn) <br />-so (use StdOut) <br />-ssw (Compress shared files) <br />-t (Type of archive) <br />-u (Update) <br />-v (Volumes) <br />-w (Working Dir) <br />-x (Exclude) <br /><br /><br />b： Benchmark <br /><br />d： Deletes files from archive. 从压缩包中删除文件 <br />d命令可用参数： <br />-i (Include) <br />-m (Method) <br />-p (Set Password) <br />-r (Recurse) <br />-u (Update) <br />-w (Working Dir) <br />-x (Exclude) <br /><br />e： Extract解压文件至当前目录或指定目录 <br />e命令可用参数： <br />-ai (Include archives) <br />-an (Disable parsing of archive_name) <br />-ao (Overwrite mode) <br />-ax (Exclude archives) <br />-i (Include) <br />-o (Set Output Directory) <br />-p (Set Password) <br />-r (Recurse) <br />-so (use StdOut) <br />-x (Exclude) <br />-y (Assume Yes on all queries) <br /><br />l： Lists contents of archive. <br />t： Test <br />u： Update <br /><br />x： eXtract with full paths用文件的完整路径解压至当前目录或指定目录 <br />x命令可用参数： <br />-ai (Include archives) <br />-an (Disable parsing of archive_name) <br />-ao (Overwrite mode) <br />-ax (Exclude archives) <br />-i (Include) <br />-o (Set Output Directory) <br />-p (Set Password) <br />-r (Recurse) <br />-so (use StdOut) <br />-x (Exclude) <br />-y (Assume Yes on all queries) <br />-m (Set compression Method) switch <br />Specifies the compression method.<br /><br /><br /><span style="font-weight: bold; line-height: 32px">用7-ZIP实现批处理 命令行压缩和解压功能</span> <br /><br />编辑一个.bat文件；每行这样写，就可以连续压制多个目录了<br />7z a -mx9 -md64m -mfb=273 -slp -ssw -v1024m -mmt=2 -r<br />{路径及7z档名} {路径及要压缩的文件名及路径 可以空格填多个}<br /><br />例子：建议以成对双引号来包压缩档名和路径名<br />7z a -mx9 -md64m -mfb=273 -slp -ssw -v1024m "game" "d:\game\*.*"<br />把d:\game\ 以ultra模式 64m字典fb273 每分卷1024m模式压缩<br /><br />-mxN N=0~9 ；压缩模式选择<br />Level Method Dictionary FastBytes MatchFinder Filter Description <br />0 Copy No compression. <br />1 LZMA 64 KB 32 HC4 BCJ Fastest compressing <br />3 LZMA 1 MB 32 HC4 BCJ Fast compressing <br />5 LZMA 16 MB 32 BT4 BCJ Normal compressing <br />7 LZMA 32 MB 64 BT4 BCJ Maximum compressing <br />9 LZMA 64 MB 64 BT4 BCJ2 Ultra compressing -mdNm 填字典大小 比如填26 和填64m一样的；看说明更大内存也可以填，比如128m字典<br />最大1024m<br /><br />The maximum value for dictionary size is 1 GB = 2^30 bytes. Default values for LZMA are 24 (16 MB) in normal mode, 25 (32 MB) in maximum mode (-mx=7) and 26 (64 MB) in ultra mode (-mx=9). <br /><br />-mfb=N 填fastbytes大小，此数字增大会稍微加大压缩但减慢速度<br /><br />-slp (Set Large Pages mode)；会加快压缩，但开始会卡下，This feature works only on Windows 2003 / XP x64<br /><br />-ssw 也压缩共享文件<br /><br />-v (Create Volumes) switch<br />Specifies volume sizes.<br />Syntax<br />-v{Size}[b | k | m | g]<br /><br />-mmt=N 多核选项，比如双核填2<br /><br /><br /></p>
<div class="cnt">
<p><strong>命令行压缩解压一 7z</strong></p>
<p>1) 简介<br />7z，全称7-Zip， 是一款开源软件。是目前公认的压缩比例最大的压缩解压软件。<br />主页：<a href="http://www.7-zip.org/"><span style="color: #5fa207" color="#5fa207">http://www.7-zip.org/</span></a><br />中文主页：<a href="http://7z.sparanoid.com/"><span style="color: #5fa207" color="#5fa207">http://7z.sparanoid.com/</span></a><br />命令行版本下载：<a href="http://7z.sparanoid.com/download.html"><span style="color: #5fa207" color="#5fa207">http://7z.sparanoid.com/download.html</span></a><br />主要特征：<br /># 全新的LZMA算法加大了7z格式的压缩比<br /># 支持格式：<br />* 压缩 / 解压缩：7z, XZ, BZIP2, GZIP, TAR, ZIP<br />* 仅解压缩：ARJ, CAB, CHM, CPIO, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, UDF, VHD, WIM, XAR, Z</p>
<p>2）退出代码<br />0 ： 正常，没有错误；<br />1 ： 警告，没有致命的错误，例如某些文件正在被使用，没有被压缩；<br />2 ： 致命错误；<br />7 ： 命令行错误；<br />8 ： 没有足够的内存；<br />255 ： 用户停止了操作；</p>
<p>3）使用语法<br />7z &lt;命令行&gt; [&lt;选项&gt;...] &lt;基本档案名称&gt; [&lt;参数变量&gt;...]</p>
<p>在方括号内的表达式(&#8220;[&#8221; 和 &#8220;]&#8221;之间的字符)是可选的。<br />在书名号内的表达式(&#8220;&lt;&#8221; 和 &#8220;&gt;&#8221;之间的字符)是必须替换的表达式(而且要去掉括号)。</p>
<p>7-Zip 支持和 Windows 相类似的通配符：<br />&#8220;*&#8221;可以使用星号代替零个或多个字符。 <br />&#8220;?&#8221;可以用问号代替名称中的单个字符。<br />如果只用*，7-Zip 会将其视为任何扩展名的全部文件。</p>
<p>4）命令及实例</p>
<p>a 添加文件到压缩档案。<br />7z a archive1.zip subdir\ ：增加subdir文件夹下的所有的文件和子文件夹到archive1.zip中，archived1.zip中的文件名包含subdir\前缀。<br />7z a archive2.zip .\subdir\* ：增加subdir文件夹下的所有的文件和子文件夹到archive1.zip中，archived2.zip中的文件名不包含subdir\前缀。<br />cd /D c:\dir1\ <br />7z a c:\archive3.zip dir2\dir3\ ：archiive3.zip中的文件名将包含dir2\dir3\前缀，但是不包含c:\dir1前缀。<br />7z a Files.7z *.txt -r ： 增加当前文件夹及其子文件夹下的所有的txt文件到Files.7z中。</p>
<p>b 测试 CPU 运行速度及检查内存错误。</p>
<p>d 从压缩档案删除文件。<br />7z d archive.zip *.bak -r ：从archive.zip中删除所有的bak文件。</p>
<p>e 从压缩档案中释放文件到当前目录中。或者到指定的输出文件夹。输出文件夹设置可以通过 -o (设置输出文件夹) 选项来更改。此命令会将所有被释放的文件放置到一个文件夹。如果您想使用完整路径释放文件，您必须使用 x (完整路径释放) 命令。 <br />7z e archive.zip ：从压缩档案 archive.zip 中释放所有文件到当前文件夹。<br />7z e archive.zip -oc:\soft *.cpp ：从压缩档案 archive.zip 中释放 *.cpp 文件到 c:\soft 文件夹。</p>
<p>l 列出压缩档案内容。<br />7z l archive.zip ：列出压缩档案 archive.zip 的内容。</p>
<p>t 测试压缩档案文件的完整性。<br />7z t archive.zip *.doc ：在压缩档案 archive.zip 中测试 *.doc 文件的完整性。</p>
<p>u 在压缩档案文件中使用较新的文件替换掉较旧的文件。<br />7z u archive.zip *.doc ：在压缩档案 archive.zip 中更新 *.doc 文件。</p>
<p>x 在当前目录中，使用完整路径从压缩档案中释放文件.或者到指定的输出文件夹。<br />7z x archive.zip ：从压缩档案 archive.zip 中释放所有文件到当前文件夹。<br />7z x archive.zip -oc:\soft *.cpp ：从压缩档案 archive.zip 中释放 *.cpp 文件到 c:\soft 文件夹。</p>
<p>5）更多的选项</p>
<p>-- 在命令行中使&#8220;--&#8221;后的选项开关&#8220;-&#8221;都失效。这样就允许在命令行中使用文件名以&#8220;-&#8221;开头的文件。<br />7z t -- -ArchiveName.7z ：测试 -ArchiveName.7z 压缩档案.</p>
<p>-i指定压缩时附加文件或一类文件。此选项可附件添加多个类型。<br />i[&lt;recurse_type&gt;]&lt;file_ref&gt; 其中&lt;recurse_type&gt;为可以为r[- | 0]（具体的-r选项见后面-r），&lt;file_ref&gt;可以为@{listfile} | !{wildcard}。<br />7z a -tzip src.zip *.txt -ir!DIR1\*.cpp ：从当前目录中添加 *.txt 文件，和 DIR1 目录及其子目录中的 *.cpp 文件到 src.zip 压缩档案。</p>
<p>-x 指定某一文件或某一类文件从操作中排除。此选项可同时排除多个类型。<br />x[&lt;recurse_type&gt;]&lt;file_ref&gt; 其中&lt;recurse_type&gt;为可以为r[- | 0]（具体的-r选项见后面-r），&lt;file_ref&gt;可以为@{listfile} | !{wildcard}。<br />7z a -tzip archive.zip *.txt -x!temp.* ：添加除 temp.* 文件之外的所有 *.txt 文件到压缩档案 archive.zip。</p>
<p>-o 指定释放文件的输出文件夹。此选项只能和释放命令配合使用。<br />7z x archive.zip -oc:\Doc ：从 archive.zip 压缩档案释放所有文件到 c:\Doc 文件夹。</p>
<p>-r 递归子目录选项。<br />-r 开启递归子目录。对于 e (释放)、l (列表)、t (测试)、x (完整路径释放) 这些在压缩档案中操作的命令， 会默认使用此选项。 <br />-r- 关闭递归子目录。对于 a (添加)、d (删除)、u (更新) 等所有需扫描磁盘文件的命令，会默认使用此选项。 <br />-r0 开启递归子目录。但只应用于通配符。 <br />7z l archive.zip -r- *.doc ：列出在 archive.zip 压缩档案中根目录下的 *.doc 文件。 <br />7z a -tzip archive.zip -r src\*.cpp src\*.h ：将 src 目录及其子目录中的 *.cpp 及 *.h 文件添加到 archive.zip 压缩档案。</p>
<p>-t 指定压缩档案格式。指定压缩档案格式。它们可以是：zip、7z、rar、cab、gzip、bzip2、tar 或其它格式。而 默认值是 7z 格式。 <br />7z a -tzip archive.zip *.txt ：使用 zip 格式从当前目录中添加所有 *.txt 文件到压缩档案 archive.zip。</p>
<p>-y 使 7-Zip 执行命令时的大多数提示失效。您可以使用此选项来阻止在 e (释放) 和 x (完整路径释放) 命令中文件覆盖时的提示。<br />7z x src.zip -y ：从 src.zip 释放所有文件。所有的覆盖提示将被阻止且所有相同文件名的文件将被覆盖。</p>
<p>-v指定分卷大小。<br />{Size}[b | k | m | g] <br />指定分卷大小，可以使用字节、KB(1 KB＝1024 字节)，MB(1 MB = 1024 KB)或 GB(1 GB = 1024 MB)。如果您只指定了 {Size}，7-zip 将把它视为字。 <br />7z a a.7z *.txt -v10k -v15k -v2m ： 创建 a.7z 分卷压缩档案。第一个分卷为 10 KB，第二个为 15 KB，剩下全部为 2 MB。</p>
<p>-p 指定密码。<br />7z x archive.zip -psecret ：将设有密码&#8220;secret&#8221;的压缩档案 archive.zip 中所有文件释放。</p>
<p>-ao 指定在释放期间如何覆盖硬盘上现有的同名文件。<br />语法：-ao[a | s | u ]<br />-aoa 直接覆盖现有文件，而没有任何提示。 <br />-aos 跳过现有文件，其不会被覆盖。 <br />-aou 如果相同文件名的文件以存在，将自动重命名被释放的文件。举个例子，文件 file.txt 将被自动重命名为 file_1.txt。 <br />-aot 如果相同文件名的文件以存在，将自动重命名现有的文件。举个例子，文件 file.txt 将被自动重命名为 file_1.txt。 <br />7z x test.zip -aoa ：从压缩档案 test.zip 中释放所有文件并却不做提示直接覆盖现有文件。</p>
<p>-an 不解析命令行中的 archive_name 区域。此选项必须和 -i (附加文件) 开关一起使用。比如您为压缩档案使用列表文件，您就需要指定 -ai 选项，所以您需要禁止解析命令行中的 archive_name 区域。<br />实例见后面的-ai和-ax中。</p>
<p>-ai 指定附加文件，包括压缩档案文件名及通配符。此选项可同时附加多个类型。<br />ai[&lt;recurse_type&gt;]&lt;file_ref&gt; 其中&lt;recurse_type&gt;为可以为r[- | 0]（具体的-r选项见后面-r），&lt;file_ref&gt;可以为@{listfile} | !{wildcard}。<br />7z t -an -air!*.7z ： 在当前目录及子目录下测试 *.7z 压缩档案。</p>
<p>-ax 指定必须从操作中排除的压缩档案。此选项可同时排除多个类型。<br />ax[&lt;recurse_type&gt;]&lt;file_ref&gt; 其中&lt;recurse_type&gt;为可以为r[- | 0]（具体的-r选项见后面-r），&lt;file_ref&gt;可以为@{listfile} | !{wildcard}。<br />7z t -an -ai!*.7z -ax!a*.7z ：测试除 a*.7z 之外的 *.7z 压缩档案。</p>
<p>更多的不常用的选项，可以查看帮助。例如：-m设置压缩算法；-scs 设置要压缩的文件的列表文件的字符集；-seml通过电子邮件发送压缩档；-sfx创建自释放档；-si从标准输入读入数据，-so从输出到标准输 出；-slp设置大内存模式；-slt显示技术信息；-ssc设置区分大小写；-ssw压缩正在写入的文件；-u更新选项。</p>
<p>&nbsp;</p></div></div><img src ="http://www.cppblog.com/jackdongy/aggbug/194550.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-11-05 14:38 <a href="http://www.cppblog.com/jackdongy/archive/2012/11/05/194550.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux 压缩工具 7z的使用小技巧！ </title><link>http://www.cppblog.com/jackdongy/archive/2012/11/03/194198.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Sat, 03 Nov 2012 06:16:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/11/03/194198.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/194198.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/11/03/194198.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/194198.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/194198.html</trackback:ping><description><![CDATA[<a href="http://blog.csdn.net/liuyuze/article/details/2865118">http://blog.csdn.net/liuyuze/article/details/2865118</a><br /><br />&nbsp;Linux下有很多压缩工具，7z是已知最大压缩比的工具，它的使用比较复杂，以下我记下的一些技巧 
<p>&nbsp;</p>
<p>压缩命令（结合tar命令）： <span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font size="4" face="宋体">tar cf -&nbsp;/home/test | 7z a -si test.tar.7z</font></span></p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font size="4" face="宋体">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;上面命令将&nbsp;/home/test 文件夹压缩为 test.tar.7z 文件</font></span></p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font size="4" face="宋体"><font color="#333333" size="2" face="Times New Roman">解压命令(结合tar命令)&nbsp;&nbsp;：&nbsp;&nbsp; <font color="#000080" size="4" face="宋体">7z x -so test.tar.7z | tar xf - /home/alex</font></font></font></span></p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font size="4" face="宋体">这个命令将test.tar.7z 的内容解压到 /home/alex目录下</font></span></p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font size="4" face="宋体"></font></span>&nbsp;</p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font color="#333333" size="2">根据不同需要，还可以设置不同压缩比 ，这个命令特别适合做RAMDISK时候使用，大大节省宝贵的空间，希望对各位有帮助！</font></span></p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font color="#333333" size="2"></font></span>&nbsp;</p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font color="#333333" size="2">下面是压缩参数设置，引用地址：<a href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm">http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm</a></font></span></p>
<p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt"><font color="#333333" size="2">原文如下</font></span></p><span lang="EN-US" style="color: navy; mso-bidi-font-size: 6.0pt">
<h1><a name="t0"></a>-m (设置压缩算法) 选项</h1>
<p>指定压缩算法。</p>
<h4><a name="t1"></a>语法</h4><pre class="syntax" name="code">-m&lt;method_parameters&gt;
</pre>
<p>此选项的格式依压缩档案的类型而定。</p>
<h4><a name="t2"></a>Zip</h4>
<p>
<table>
<tbody>
<tr>
<th width="160">参数</th>
<th align="center">默认值</th>
<th>说明</th></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#ZipX"><u><font color="#0000ff">x=[0 | 5 | 9 ]</font></u></a></td>
<td align="center">5</td>
<td>设置压缩等级。</td></tr>
<tr>
<td>m={MethodID}</td>
<td align="center">Deflate</td>
<td>设置压缩算法：Copy、Deflate、Deflate64、BZip2。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#Deflate_FastBytes"><u><font color="#0000ff">fb={NumFastBytes}</font></u></a></td>
<td align="center">32</td>
<td>设置 Deflate 编码器的单词大小。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#Deflate_Pass"><u><font color="#0000ff">pass={NumPasses}</font></u></a></td>
<td align="center">1</td>
<td>设置 Deflate 编码器的传送大小。</td></tr></tbody></table>
<p>&nbsp;</p>
<dl>
<dt><a name="ZipX"></a>x=[0 | 5 | 9 ] 
<dd>
<p>设置压缩等级</p>
<table>
<tbody>
<tr>
<th width="60">压缩等级</th>
<th>说明</th></tr>
<tr>
<td>0</td>
<td>不压缩。</td></tr>
<tr>
<td>5</td>
<td>默认的压缩等级。</td></tr>
<tr>
<td>9</td>
<td>最大压缩等级。压缩后的文件会更小。但是在压缩的时候会比较慢而且需要较多的物理内存。</td></tr></tbody></table>
<dt><a name="Deflate_FastBytes"></a>fb={NumFastBytes} 
<dd>
<p>设置 Deflate 编码器的单词大小。您可以在 3 到 255 范围之内更改。在 Deflate 算法下，它的默认值是 32；在 Deflate 64 算法下，它的默认值是 64。如果要压缩的多个文件中，有很多排列相同的字节，比如说内容及格式极为相同的两个纯文本文档，那么在压缩的时候如果有较大的单词大小，将会在一定程度上提高压缩比。所以，通常情况下，其数量越大，压缩后的文件就会越小。但是在压缩和解压缩的时候会比较慢而且需要较多的物理内存。</p>
<dt><a name="Deflate_Pass"></a>pass={NumPasses} 
<dd>
<p>设置 Deflate 编码器的传送大小。您可以在 1 到 4 范围之内更改。在 Deflate 算法下，它的默认值是 1；在 Deflate 64 算法下，它的默认值是 3。此项可略微提升压缩比，但并不明显。 </p></dd></dl>
<h4><a name="t3"></a>GZip</h4>
<p>除了 GZip 不支持&#8220;储存&#8221;压缩算法之外，GZip 和 Zip 一样使用着相同的参数。 </p>
<h4><a name="t4"></a>7z</h4>
<p>
<table>
<tbody>
<tr>
<th width="80">参数</th>
<th align="center">默认</th>
<th>说明</th></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#SevenZipX"><u><font color="#0000ff">x=[0 | 1 | 5 | 7 | 9 ]</font></u></a></td>
<td align="center">5</td>
<td>设置压缩等级。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#Solid"><u><font color="#0000ff">s=[off | on | [e] [{N}f] [{N}b | {N}k | {N}m | {N}g]</font></u></a></td>
<td align="center">on</td>
<td>设置固实模式。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#Filter"><u><font color="#0000ff">f=[off | on]</font></u></a></td>
<td align="center">on</td>
<td>开启或关闭可执行文件压缩过滤器。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#HeaderCompress"><u><font color="#0000ff">hc=[off | on]</font></u></a></td>
<td align="center">on</td>
<td>开启或关闭档案文件头压缩。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#HeaderCompressFull"><u><font color="#0000ff">hcf=[off | on]</font></u></a></td>
<td align="center">on</td>
<td>开启或关闭档案文件头完全压缩。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#HeaderEncrypt"><u><font color="#0000ff">he=[off | on]</font></u></a></td>
<td align="center">off</td>
<td>开启或关闭档案文件头加密。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#Bind"><u><font color="#0000ff">b{C1}[s{S1}]:{C2}[s{S2}]</font></u></a></td>
<td align="center"><u><font color="#0000ff"></font></u></td>
<td>设置编码器之间绑定。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#MethodID"><u><font color="#0000ff">{N}={MethodID}[:param1][:param2][..]</font></u></a></td>
<td align="center">LZMA</td>
<td>设置压缩算法：LZMA、PPMd、BZip2、Deflate、BCJ、BCJ2、Copy。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#MultiThread"><u><font color="#0000ff">mt=[off | on]</font></u></a></td>
<td align="center">off</td>
<td>设置多线程模式。</td></tr></tbody></table>
<p>&nbsp;</p>
<dl>
<dt><a name="SevenZipX"></a>x=[0 | 1 | 5 | 7 | 9 ] 
<dd>
<p>设置压缩等级</p>
<table>
<tbody>
<tr>
<th width="60">压缩等级</th>
<th>说明</th></tr>
<tr>
<td>0</td>
<td>不压缩.</td></tr>
<tr>
<td>1</td>
<td>快速压缩：LZMA 快速算法、32KB 字典大小、HC3 Match finder、BCJ 过滤器。</td></tr>
<tr>
<td>5</td>
<td>正常压缩：LZMA 标准算法、2 MB 字典大小、BT4 Match finder、单词大小为 32、BCJ 过滤器。</td></tr>
<tr>
<td>7</td>
<td>最大压缩：LZMA 最大算法、8 MB 字典大小、BT4 Match finder、单词大小为 64、BCJ 过滤器。</td></tr>
<tr>
<td>9</td>
<td>极限压缩：LZMA 最大算法、32 MB 字典大小、BT4b Match finder、单词大小为 64、BCJ2 过滤器。</td></tr></tbody></table>
<dt><a name="Solid"></a>s=[off | on | [e] [{N}f] [{N}b | {N}k | {N}m | {N}g)] 
<dd>
<p>开启或关闭固实模式。此选项的默认值是 s=on。开启或关闭固实压缩档案模式。在创建固实压缩档案模式中，它把压缩档案中的所有文件都当成一个连续数据流来看待。通常情况下，固实压缩可增加压缩比，特别是在添加大量小文件的时候。</p>
<table>
<tbody>
<tr>
<td>e</td>
<td>为每一种文件扩展名使用单独的固实数据流</td></tr>
<tr>
<td>{N}f</td>
<td>设置在一个固实数据流种文件的个数</td></tr>
<tr>
<td>{N}b | {N}k | {N}m | {N}g</td>
<td>设置固实数据流的大小(字节)</td></tr></tbody></table>
<p>不同的压缩等级对固实数据流大小的限制：</p>
<table>
<tbody>
<tr>
<th width="80">压缩等级</th>
<th>大小</th></tr>
<tr>
<td>储存</td>
<td>0 B</td></tr>
<tr>
<td>快速</td>
<td>16 MB</td></tr>
<tr>
<td>正常</td>
<td>256 MB</td></tr>
<tr>
<td>最大</td>
<td>1 GB</td></tr>
<tr>
<td>极限</td>
<td>4 GB</td></tr></tbody></table>
<p>对固实数据流大小的限制虽然能应响到压缩比，但是它还是有相当多的优势：</p>
<ul><li>万一压缩档案损坏，并不会丢失所有数据。</li><li>减少了文件的释放时间。 </li></ul>
<p>在当前的版本中，您只能更新在压缩时未选择&#8220;创建固实压缩档案&#8221;的压缩档案。也就是说当前版本不支持固实压缩档案的更新。</p>
<p>示例：</p><pre class="example" name="code">        -s=100f10m</pre>
<p>设置固实模式使每个固实数据流种最多 100 文件，并且最大 10 MB 。</p>
<dt><a name="Filter"></a>f=[off | on] 
<dd>
<p>开启或关闭可执行文件压缩过滤器：dll、exe、ocx、sfx、sys。它用于 BCJ2 过滤器(使用极限压缩)及 BCJ 过滤器中。此选项的默认值是 f=on. </p>
<dt><a name="HeaderCompress"></a>hc=[off | on] 
<dd>
<p>开启或关闭档案文件头压缩。此选项的默认值是 hc=on。如果开启档案文件头压缩，一部分档案的文件头将使用 LZMA 算法进行压缩。 </p>
<dt><a name="HeaderCompressFull"></a>hcf=[off | on] 
<dd>
<p>开启或关闭档案文件头完全压缩。此选项的默认值是 hcf=on。如果开启档案文件头完全压缩，那么此压缩档案只有 7-Zip 2.30 beta 25 及更高的版本才能支持。 </p>
<dt><a name="HeaderEncrypt"></a>he=[off | on] 
<dd>
<p>开启或关闭档案文件头加密。此选项的默认值是 he=off。 </p>
<dt>{N} 
<dd>
<p>设置算法的顺序。它也可以用算法关联参数。最小值为 0。含有从号的算法将被首先使用。</p>
<dt><a name="Bind"></a>b{C1}[s{S1}]:{C2}[s{S2}] 
<dd>
<p>将输出流 S1 及编码器 C2 中的输入流 S2 与编码器 C1 绑定。如果未指定流的大小，那么大小将为 0。</p>
<p>通常情况下，编码器有一个输入流及一个输出流。而在 7z 中，一些编码器有多个输入及输出流。</p>
<p>举个例子，<a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#BCJ2"><u><font color="#0000ff">BCJ2</font></u></a> 编码器有有关输入流及四个输出流。</p>
<dt><a name="MultiThread"></a>mt=[off | on] 
<dd>
<p>开启或关闭多线程压缩模式。在多线程支持模式中，7-Zip 将使用两个线程来进行压缩。这样的话，对于多处理器系统，那么压缩速度将提升 70-80%。对于 Pentium 4 超线程处理器，压缩速度将提升 25% 左右。但解压缩时只使用单独线程。注意！此选项仅对 LZMA 压缩算法有效。 </p>
<dt><a name="MethodID"></a>{N}={MethodID}[:param1][:param2] ... [:paramN] 
<dd>
<p>设置压缩算法。在 7z 格式中，您可以使用许多压缩算法。此选项的默认算法是 LZMA。</p>
<p>此参数必须是下列格式中的任意一种：</p>
<ul><li>{ParamName}={ParamValue}。</li><li>{ParamName}{ParamValue}，{ParamValue} 是一个数值，并且 {ParamName} 中不包含数字。 </li></ul>
<p>支持的压缩算法：</p>
<table>
<tbody>
<tr>
<th width="60">MethodID</th>
<th>说明</th></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#LZMA"><u><font color="#0000ff">LZMA</font></u></a></td>
<td>基于 LZ 之上的压缩算法。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#PPMd"><u><font color="#0000ff">PPMd</font></u></a></td>
<td>基于 Dmitry Shkarin 之上的算法 PPMdH 并加以优化。通常能对纯文本提供高压缩比及较快的解压缩速度。</td></tr>
<tr>
<td>BZip2</td>
<td>基于 BWT 的标准压缩算法。通常能对纯文本提供较高压缩比及相当不错的解压缩速度。</td></tr>
<tr>
<td>Deflate</td>
<td>ZIP 及 GZip 格式的标准压缩算法。没有很高的压缩比。但是它拥有十分快的压缩及解压缩速度。Deflate 压缩算法只支持 32 KB 字典大小。</td></tr>
<tr>
<td>BCJ</td>
<td>(CALL、JUMP)32 位 x86 可执行文件转换器。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#BCJ2"><u><font color="#0000ff">BCJ2</font></u></a></td>
<td>(CALL、JUMP、JCC)32 位 x86 可执行文件转换器(第二版)。</td></tr>
<tr>
<td>Copy</td>
<td>不压缩。</td></tr></tbody></table>
<h4><a name="t5"></a><a name="LZMA"></a>LZMA</h4>
<p>LZMA 是基于 Lempel-Ziv(由以色列数学家 A.Lempel 和 J.Ziv 共同开发的压缩算法)之上的压缩算法。它能提供相当快的解压缩速度(约比压缩快 10 到 20 倍)。对内存的需求也不尽相同(详细信息请参见 <a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#DictionarySize"><u><font color="#0000ff">d={Size}[b|k|m]</font></u></a> 选项)。</p>
<table>
<tbody>
<tr>
<th width="80">参数</th>
<th align="center">默认值</th>
<th>说明</th></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#LZMAMode"><u><font color="#0000ff">a=[0|1|2]</font></u></a></td>
<td align="center">1</td>
<td>设置压缩等级</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#DictionarySize"><u><font color="#0000ff">d={Size}[b|k|m]</font></u></a></td>
<td align="center">20</td>
<td>设置字典大小</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#MatchFinder"><u><font color="#0000ff">mf={MF_ID}</font></u></a></td>
<td align="center">bt4</td>
<td>设置匹配器</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#FastBytes"><u><font color="#0000ff">fb={N}</font></u></a></td>
<td align="center">32</td>
<td>设置紧缩字节数量</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#LitContext"><u><font color="#0000ff">lc={N}</font></u></a></td>
<td align="center">3</td>
<td>设置 Literal Context 块数 - [0, 8]</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#LitPos"><u><font color="#0000ff">lp={N}</font></u></a></td>
<td align="center">0</td>
<td>设置 Literal Pos 块数 - [0, 4]</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#PosBits"><u><font color="#0000ff">pb={N}</font></u></a></td>
<td align="center">2</td>
<td>设置 Pos 块数 - [0, 4]</td></tr></tbody></table>
<dl>
<dt><a name="#LZMAMode"></a>a=[0|1|2] 
<dd>
<p>设置压缩等级：0＝快速、1＝正常、2＝最大压缩。默认值为 1。</p>
<dt><a name="DictionarySize"></a>d={Size}[b|k|m] 
<dd>
<p>设置 LZMA 压缩算法的字典大小。您可以使用字节、KB 或 MB 来指定此项。字典大小的最大值为 256 MB＝2^28 字节。正常模式下，LZMA 的字典大小默认值为 21(2 MB) ；最大模式(-mx=7)下为 23(8 MB)；极限模式(-mx=9)下为 25(32 MB)。如果您未指定 [b|k|m] 项，字典大小将自动根据压缩等级来选择相应的单位。对于 LZMA 算法的文件解压缩，若压缩文件的字典大小为 64 MB，则解压缩时就需要 64 兆可用的物理内存。 </p>
<dt><a name="MatchFinder"></a>mf={MF_ID} 
<dd>
<p>设置 LZMA 压缩算法的匹配器。默认算法为 bt4。bt* 类的算法所需的内存比 pat* 类所需的内存少。通常情况下 bt4 的工作速度比 pat* 快得多，然而部分文件格式在 pat* 算法中可以工作得很快。hc* 类算法并没有很好得压缩比，但是它与快速模式(a=0)结合使用通常会工作得相当快。所需内存依字典大小而定(参见下表)。</p>
<table>
<tbody>
<tr>
<th width="60">MF_ID</th>
<th width="120">所需内存</th>
<th>说明</th></tr>
<tr>
<td>bt2</td>
<td>d&#215;9.5 + 1 MB</td>
<td>二进制树；2 散列字节。</td></tr>
<tr>
<td>bt3</td>
<td>d&#215;9.5 + 65 MB</td>
<td>二进制树；2-3(完整) 散列字节。</td></tr>
<tr>
<td>bt4</td>
<td>d&#215;9.5 + 6 MB</td>
<td>二进制树；2-3-4 散列字节。</td></tr>
<tr>
<td>bt4b</td>
<td>d&#215;9.5 + 34 MB</td>
<td>二进制树；2-3-4(大) 散列字节。</td></tr>
<tr>
<td>pat2r</td>
<td>d&#215;26 + 1 MB</td>
<td>Patricia 树；2-位节点；可移动。</td></tr>
<tr>
<td>pat2</td>
<td>d&#215;38 + 1 MB</td>
<td>Patricia 树；2-位节点。</td></tr>
<tr>
<td>pat2h</td>
<td>d&#215;38 + 77 MB</td>
<td>Patricia 树；2-位节点；2-3 散列字节。</td></tr>
<tr>
<td>pat3h</td>
<td>d&#215;62 + 85 MB</td>
<td>Patricia 树；3-位节点；2-3 散列字节。</td></tr>
<tr>
<td>pat4h</td>
<td>d&#215;110 + 101 MB</td>
<td>Patricia 树；4-位节点；2-3 散列字节。</td></tr>
<tr>
<td>hc3</td>
<td>d&#215;5.5 + 1 MB</td>
<td>Hash Chain；-3 散列字节。</td></tr>
<tr>
<td>hc4</td>
<td>d&#215;5.5 + 6 MB</td>
<td>Hash Chain；2-3-4 散列字节。</td></tr></tbody></table>
<p>注意：操作系统同样需要一部分物理内存来维持系统得正常运行。所以至少要剩余 32 可用物理内存。</p>
<dt><a name="FastBytes"></a>fb={N} 
<dd>
<p>设置 LZMA 压缩算法的紧缩字节。有效范围从 5 到 255。正常模式下默认值为 32；最大模式下为 64 。通常情况下，较大的数值能略微提高压缩比。但同时也会降低压缩速度。 </p>
<dt><a name="LitContext"></a>lc={N} 
<dd>
<p>设置 Literal Context 位数。有效范围从 0 到 8。默认值为 3。有时压缩档案中含有大文件会自动使用 lc=4。</p>
<dt><a name="LitPos"></a>lp={N} 
<dd>
<p>设置 Literal Pos 位数。有效范围从 0 到 4。默认值为 0。</p>
<dt><a name="PosBits"></a>pb={N} 
<dd>
<p>设置 Pos 位数。有效范围从 0 到 4。默认值为 2。</p></dd></dl>
<h4><a name="t6"></a><a name="PPMd"></a>PPMd</h4>
<p>PPMd 是 PPM-based 压缩算法的简写。它基于 Dmitry Shkarin 的算法 PPMdH 并对其源代码加以优化。PPMd 通常能对纯文本提供高压缩比及较快的解压缩速度。压缩和解压缩的速度完全相同，所需的内存大小也一样。</p>
<table>
<tbody>
<tr>
<th width="80">参数</th>
<th align="center">默认值</th>
<th>说明</th></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#MemorySize"><u><font color="#0000ff">mem={Size}[b|k|m]</font></u></a></td>
<td align="center">24</td>
<td>设置 PPMd 算法使用内存。</td></tr>
<tr>
<td><a class="parameter" href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/method.htm#Order"><u><font color="#0000ff">o={Size}</font></u></a></td>
<td align="center">6</td>
<td>设置 PPMd 算法压缩命令。</td></tr></tbody></table>
<dl>
<dt><a name="MemorySize"></a>mem={Size}[b|k|m] 
<dd>
<p>设置 PPMd 算法使用的内存多少。您可以使用字节、KB 或 MB 来指定此项。最大值为 2 GB＝2^31 字节；默认值为 24(16MB)。如果您未指定 [b|k|m] 项，字典大小将自动根据压缩等级来选择相应的单位。PPMd 在压缩和解压缩时所需的内存大小是相同的。</p>
<dt><a name="Order"></a>o={Size} 
<dd>
<p>设置 PPMd 算法压缩命令。其大小必须在 [2,32] 范围内。默认值为 6。</p></dd></dl>
<h4><a name="t7"></a><a name="BCJ2"></a>BCJ2</h4>
<p>BCJ2 是 32 位 x86 可执行文件转换器(第二版)。它通过转换分支指令来对文件进行进一步压缩。</p>
<p>BCJ2 编码器有一个输入流和四个输出流：</p>
<ul><li>s0：干流。提供进一步的压缩。</li><li>s1：CALL 值转换流。提供进一步的压缩。</li><li>s2：JUMP 值转换流。提供进一步的压缩。</li><li>s3：服务流。它已经备压缩过。 </li></ul>
<p>如果使用 LZMA 压缩算法，s1 及 s2 流的字典大小将会比 s0 流的小(512 KB)。</p></dd></dl>
<h4><a name="t8"></a>示例</h4><pre class="example" name="code">7z a -tzip archive.zip *.jpg -m0
</pre>
<p>不压缩而直接将 <span class="filename">*.jpg</span> 文件添加到 <span class="filename">archive.zip</span> 档案。</p><pre class="example" name="code">7z a -t7z archive.7z *.exe *.dll -m0=BCJ -m1=LZMA:d=21 -ms -mmt
</pre>
<p>添加 <span class="filename">*.exe</span> 及 <span class="filename">*.dll</span> 文件到固实压缩档案 <span class="filename">archive.7z</span>。使用 LZMA 压缩算法、2 MB 字典大小及 BCJ 转换器。压缩将开启多线程优化(如果可用)。</p><pre class="example" name="code">7z a -t7z archive.7z *.exe *.dll -m0=BCJ2 -m1=LZMA:d23 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3
</pre>
<p>添加 <span class="filename">*.exe</span> 及 <span class="filename">*.dll</span> 文件到压缩档案 <span class="filename">archive.7z</span>。使用 LZMA 压缩算法、BCJ2 转换器、为主输出流(s0)使用 8 MB 字典大小、LZMA 算法为 BCJ2 转换器的 s1 及 s2 输出流使用 512 KB 字典大小。</p><pre class="example" name="code">7z a -t7z archive.7z *.txt -m0=PPMd
</pre>
<p>添加 <span class="filename">*.txt</span> 文件到压缩档案 <span class="filename">archive.7z</span>。 使用 PPMd 压缩算法。</p>
<h4><a name="t9"></a>可以和此选项结合使用的命令</h4>
<p><a href="http://anywolfs.com/liuhui/7-zip/cmdline/commands/add.htm"><u><font color="#0000ff">a (添加)</font></u></a>， <a href="http://anywolfs.com/liuhui/7-zip/cmdline/commands/delete.htm"><u><font color="#0000ff">d (删除)</font></u></a>， <a href="http://anywolfs.com/liuhui/7-zip/cmdline/commands/update.htm"><u><font color="#0000ff">u (更新)</font></u></a> </p>
<h4><a name="t10"></a>其它</h4>
<p><strong>选项：</strong> <a href="http://anywolfs.com/liuhui/7-zip/cmdline/switches/type.htm"><u><font color="#0000ff">-t (设置压缩档案格式)</font></u></a> </p></span><img src ="http://www.cppblog.com/jackdongy/aggbug/194198.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-11-03 14:16 <a href="http://www.cppblog.com/jackdongy/archive/2012/11/03/194198.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux如何获取系统信息</title><link>http://www.cppblog.com/jackdongy/archive/2012/10/24/193820.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Wed, 24 Oct 2012 15:12:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/10/24/193820.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/193820.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/10/24/193820.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/193820.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/193820.html</trackback:ping><description><![CDATA[<div>查看系统信息&nbsp;<br />cat&nbsp;/proc/cpuinfo&nbsp;-&nbsp;CPU&nbsp;(i.e.&nbsp;vendor,&nbsp;Mhz,&nbsp;flags&nbsp;like&nbsp;mmx)&nbsp;<br />cat&nbsp;/proc/interrupts&nbsp;-&nbsp;中断&nbsp;<br />cat&nbsp;/proc/ioports&nbsp;-&nbsp;设备IO端口&nbsp;<br />cat&nbsp;/proc/meminfo&nbsp;-&nbsp;内存信息(i.e.&nbsp;mem&nbsp;used,&nbsp;free,&nbsp;swap&nbsp;size)&nbsp;<br />cat&nbsp;/proc/partitions&nbsp;-&nbsp;所有设备的所有分区&nbsp;<br />cat&nbsp;/proc/pci&nbsp;-&nbsp;PCI设备的信息&nbsp;<br />cat&nbsp;/proc/swaps&nbsp;-&nbsp;所有Swap分区的信息&nbsp;<br />cat&nbsp;/proc/version&nbsp;-&nbsp;Linux的版本号&nbsp;相当于&nbsp;uname&nbsp;-r&nbsp;<br />uname&nbsp;-a&nbsp;-&nbsp;看系统内核等信息&nbsp;（1）&nbsp;处理器使用率&nbsp;<br />（2）&nbsp;内存使用率&nbsp;<br />（3）&nbsp;流入流出数据包&nbsp;<br />（4）&nbsp;整体网络负载&nbsp;<br />这些数据分别要从/proc/stat、/proc/net/dev、/proc/meminfo三个文件中提取。如里有问题或对要提取的数据不太清楚，可以使用man&nbsp;proc来查看proc文件系统的联机手册。&nbsp;<br />（1）&nbsp;处理器使用率&nbsp;<br />这里要从/proc/stat中提取四个数据：用户模式（user）、低优先级的用户模式（nice）、内核模式（system）以及空闲的处理器时间（idle）。它们均位于/proc/stat文件的第一行。CPU的利用率使用如下公式来计算。&nbsp;<br />CPU利用率&nbsp;=&nbsp;100&nbsp;*（user&nbsp;+&nbsp;nice&nbsp;+&nbsp;system）/（user&nbsp;+&nbsp;nice&nbsp;+&nbsp;system&nbsp;+&nbsp;idle）&nbsp;<br />（2）&nbsp;内存使用率&nbsp;<br />这里需要从/proc/meminfo文件中提取两个数据，当前内存的使用量(cmem)以及内存总量(amem)。&nbsp;<br />内存使用百分比&nbsp;=&nbsp;100&nbsp;*&nbsp;(cmem&nbsp;/&nbsp;umem)&nbsp;<br />（3）网络利用率&nbsp;<br />为了得到网络利用率的相关数据，需要从/proc/net/dev文件中获得两个数据：从本机输出的数据包数，流入本机的数据包数。它们都位于这个文件的第四行。&nbsp;<br />性能收集程序开始记录下这两个数据的初始值，以后每次获得这个值后均减去这个初始值即为从集群启动开始从本节点通过的数据包。&nbsp;<br />利用上述数据计算出网络的平均负载，方法如下：&nbsp;<br />平 均网络负载&nbsp;=&nbsp;(输出的数据包+流入的数据包)&nbsp;/&nbsp;2&nbsp;获取cpu和内存的还有2种方 法：1）toptop&nbsp;-n&nbsp;1&nbsp;-p&nbsp;[pid1,pid2,,,]&nbsp;&gt;&gt;topinfo.txt打开topinfo.txt就能获取进程 的内存cpu信息。2)psps&nbsp;-aux|grep&nbsp;[pid&nbsp;name]|grep&nbsp;-v&nbsp;grep获取到进程的内存cpu信息，其信息更加精练。　 从以上来看，由于多线程程序cpu切换是与进程一样，因此无法体现真实的cpu使用率，要将上面方法综合使用才能获取到真实合理的系统信息。</div><img src ="http://www.cppblog.com/jackdongy/aggbug/193820.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-10-24 23:12 <a href="http://www.cppblog.com/jackdongy/archive/2012/10/24/193820.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Linux上怎样安装显卡驱动 </title><link>http://www.cppblog.com/jackdongy/archive/2012/10/21/193609.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Sun, 21 Oct 2012 05:04:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/10/21/193609.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/193609.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/10/21/193609.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/193609.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/193609.html</trackback:ping><description><![CDATA[<p>1、首先打开控制台。</p>
<p>2、【..】$su</p>
<p>3、输入你的root密码，点击回车确定。</p>
<p>4、【..】#init 3</p>
<p>5、使用你的账户登录Linux。</p>
<p>6、执行显卡驱动的安装程序。例如【..】#sh NVIDIA_DEV.sh</p>
<p>7、根据安装提示，选择安装选项，完成安装。</p>
<p>8、【..】#init 5<br /></p>
<p>OK！！！very easy！！<br /><br /><a href="http://blog.csdn.net/bendanban/article/details/7660192">http://blog.csdn.net/bendanban/article/details/7660192</a></p><img src ="http://www.cppblog.com/jackdongy/aggbug/193609.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-10-21 13:04 <a href="http://www.cppblog.com/jackdongy/archive/2012/10/21/193609.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SSH是如何工作的 </title><link>http://www.cppblog.com/jackdongy/archive/2012/10/21/193608.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Sun, 21 Oct 2012 05:03:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/10/21/193608.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/193608.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/10/21/193608.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/193608.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/193608.html</trackback:ping><description><![CDATA[从客户端来看，SSH提供两种级别的安全验证。<br /><br />第一种级别（基于口令的安全验证）只要你知道自己帐号和口令，就可以登录到远程主机。所有传输的数据都会被加密，但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器，也就是受到"中间人"这种方式的攻击。<br /><br />第二种级别（基于密匙的安全验证）需要依靠密匙，也就是你必须为自己创建一对密匙，并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上， 客户端软件就会向服务器发出请求，请求用你的密匙进行安全验证。服务器收到请求之后，先在你在该服务器的家目录下寻找你的公用密匙，然后把它和你发送过来 的公用密匙进行比较。如果两个密匙一致，服务器就用公用密匙加密"质询"（challenge）并把它发送给客户端软件。客户端软件收到"质询"之后就可 以用你的私人密匙解密再把它发送给服务器。<br /><br />用这种方式，你必须知道自己密匙的口令。但是，与第一种级别相比，第二种级别不需要在网络上传送口令。<br /><br />第二种级别不仅加密所有传送的数据，而且"中间人"这种攻击方式也是不可能的（因为他没有你的私人密匙）。但是整个登录的过程可能需要10秒。<br /><br />安装并测试OpenSSH<br />因为受到美国法律的限制，在很多Linux的发行版中都没有包括OpenSSH。但是，可以从网络上下载并安装OpenSSH（有关OpenSSH的安装 和配置请参考：http://www.linuxaid.com.cn/engineer/brimmer/html/OpenSSH.htm）。<br /><br />安装完OpenSSH之后，用下面命令测试一下：<br /><br />ssh -l [your accountname on the remote host] [address of the remote host]<br /><br />如果OpenSSH工作正常，你会看到下面的提示信息：<br /><br />The authenticity of host [hostname] can't be established.<br />Key fingerprint is 1024 5f:a0:0b:65:d3:82:df:ab:44:62:6d:98:9c:fe:e9:52.<br />Are you sure you want to continue connecting (yes/no)?<br /><br />OpenSSH告诉你它不知道这台主机，但是你不用担心这个问题，因为你是第一次登录这台主机。键入"yes"。这将把这台主机的"识别标记"加到"~/.ssh/know_hosts"文件中。第二次访问这台主机的时候就不会再显示这条提示信息了。<br /><br />然后，SSH提示你输入远程主机上你的帐号的口令。输入完口令之后，就建立了SSH连接，这之后就可以象使用telnet那样使用SSH了。<br /><br />SSH的密匙<br />生成你自己的密匙对<br />生成并分发你自己的密匙有两个好处：<br /><br />1) 可以防止"中间人"这种攻击方式<br /><br />2) 可以只用一个口令就登录到所有你想登录的服务器上<br /><br />用下面的命令可以生成密匙：<br /><br />ssh-keygen<br /><br />如果远程主机使用的是SSH 2.x就要用这个命令：<br /><br />ssh-keygen -d<br /><br />在同一台主机上同时有SSH1和SSH2的密匙是没有问题的，因为密匙是存成不同的文件的。<br /><br />ssh-keygen命令运行之后会显示下面的信息：<br /><br />Generating RSA keys: ............................ooooooO......ooooooO<br />Key generation complete.<br />Enter file in which to save the key (/home/[user]/.ssh/identity):<br />[按下ENTER就行了]<br />Created directory '/home/[user]/.ssh'.<br />Enter passphrase (empty for no passphrase):<br />[输入的口令不会显示在屏幕上]<br />Enter same passphrase again:<br />[重新输入一遍口令，如果忘记了口令就只能重新生成一次密匙了]<br />Your identification has been saved in /home/[user]/.ssh/identity.<br />[这是你的私人密匙]<br />Your public key has been saved in /home/[user]/.ssh/identity.pub.<br />The key fingerprint is: 2a:dc:71:2f:27:84:a2:e4:a1:1e:a9:63:e2:fa:a5:89 [user]@[local machine]<br /><br />"ssh-keygen -d"做的是几乎同样的事，但是把一对密匙存为（默认情况下）"/home/[user]/.ssh/id_dsa"（私人密匙）和"/home/[user]/.ssh/id_dsa.pub"（公用密匙）。<br /><br />现在你有一对密匙了：公用密匙要分发到所有你想用ssh登录的远程主机上去；私人密匙要好好地保管防止别人知道你的私人密匙。用"ls -l ~/.ssh/identity"或"ls -l ~/.ssh/id_dsa"所显示的文件的访问权限必须是"-rw-------"。<br /><br />如果你怀疑自己的密匙已经被别人知道了，不要迟疑马上生成一对新的密匙。当然，你还要重新分发一次公用密匙。<br /><br />分发公用密匙<br />在每一个你需要用SSH连接的远程服务器上，你要在自己的家目录下创建一个".ssh"的子目录，把你的公用密匙"identity.pub" 拷贝到这个目录下并把它重命名为"authorized_keys"。然后执行：<br /><br />chmod 644 .ssh/authorized_keys<br /><br />这一步是必不可少的。如果除了你之外别人对"authorized_keys"文件也有写的权限，SSH就不会工作。<br /><br />
<p>如果你想从不同的计算机登录到远程主机，"authorized_keys"文件也可以有多个公用密匙。在这种情况下，必须在新的计算机上重新生成一对密 匙，然后把生成的"identify.pub"文件拷贝并粘贴到远程主机的"authorized_keys"文件里。当然在新的计算机上你必须有一个帐 号，而且密匙是用口令保护的。有一点很重要，就是当你取消了这个帐号之后，别忘了把这一对密匙删掉。</p>
<p>原文地址：http://fly-net-cn.iteye.com/blog/119301 </p><img src ="http://www.cppblog.com/jackdongy/aggbug/193608.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-10-21 13:03 <a href="http://www.cppblog.com/jackdongy/archive/2012/10/21/193608.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> 配置VIM </title><link>http://www.cppblog.com/jackdongy/archive/2012/10/21/193607.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Sun, 21 Oct 2012 05:02:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/10/21/193607.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/193607.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/10/21/193607.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/193607.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/193607.html</trackback:ping><description><![CDATA[在终端下使用vim进行编辑时，默认情况下，编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。为了更好的在vim下进行工作，需要手动设置一个配置文件：.vimrc。<br />　　在启动vim时，当前用户根目录下的.vimrc文件会被自动读取，该文件可以包含一些设置甚至脚本，所以，一般情况下把.vimrc文件创建在当前用户的根目录下比较方便，即创建的命令为：<br />　　$vi ~/.vimrc<br />　　设置完后<br />　　$:x 或者 $wq <br />　　进行保存退出即可。<br />　　下面给出一个例子，其中列出了经常用到的设置，详细的设置信息请参照参考资料：<br />　　&#8220;双引号开始的行为注释行，下同<br />　　&#8220;去掉讨厌的有关vi一致性模式，避免以前版本的一些bug和局限<br />　　set nocompatible<br />　　&#8220;显示行号<br />　　set nummber<br />　　&#8220;检测文件的类型<br />　　filetype on <br />　　&#8220;记录历史的行数<br />　　 set history=1000 <br />　　 &#8220;背景使用黑色<br />　　set background=dark <br />　　&#8220;语法高亮度显示<br />　　 syntax on <br />　　&#8220;下面两行在进行编写代码时，在格式对起上很有用；<br />　　&#8220;第一行，vim使用自动对起，也就是把当前行的对起格式应用到下一行；<br />　　&#8220;第二行，依据上面的对起格式，智能的选择对起方式，对于类似C语言编<br />　　&#8220;写上很有用<br />　　set autoindent<br />　　set smartindent<br />　　&#8220;第一行设置tab键为4个空格，第二行设置当行之间交错时使用4个空格<br />　　set tabstop=4<br />　　set shiftwidth=4<br />　　&#8220;设置匹配模式，类似当输入一个左括号时会匹配相应的那个右括号<br />　　set showmatch<br />　　&#8220;去除vim的GUI版本中的toolbar<br />　　set guioptions-=T<br />　　&#8220;当vim进行编辑时，如果命令错误，会发出一个响声，该设置去掉响声<br />　　set vb t_vb=<br />　　&#8220;在编辑过程中，在右下角显示光标位置的状态行<br />　　set ruler<br />　　&#8220;默认情况下，寻找匹配是高亮度显示的，该设置关闭高亮显示<br />　　set nohls<br />　　&#8220;查询时非常方便，如要查找book单词，当输入到/b时，会自动找到第一<br />　　&#8220;个b开头的单词，当输入到/bo时，会自动找到第一个bo开头的单词，依<br />　　&#8220;次类推，进行查找时，使用此设置会快速找到答案，当你找要匹配的单词<br />　　&#8220;时，别忘记回车<br />　　set incsearch<br />　　&#8220;修改一个文件后，自动进行备份，备份的文件名为原文件名加&#8220;~&#8220;后缀<br />　　if has(&#8220;vms&#8221;)<br />　　 set nobackup<br />　　else<br />　　 set backup<br />　　endif<br />　　如果去除注释后，一个完整的.vimrc配置信息如下所示：<br />　　set nocompatible<br />　　set nummber<br />　　filetype on <br />　　set history=1000 <br />　　set background=dark <br />　　syntax on <br />　　set autoindent<br />　　set smartindent<br />　　set tabstop=4<br />　　set shiftwidth=4<br />　　set showmatch<br />　　set guioptions-=T<br />　　set vb t_vb=<br />　　set ruler<br />　　set nohls<br />　　set incsearch<br />　　if has(&#8220;vms&#8221;)<br />　　 set nobackup<br />　　else<br />　　 set backup<br />　　endif<br />　　<br />　　如果设置完后，发现功能没有起作用，检查一下系统下是否安装了vim-enhanced包，查询命令为：<br />　　$rpm &#8211;q vim-enhanced<br />　　参考资料：<br />　　1．vim的完全翻译版在下面连接处可以找到<br /><a class="bbs" href="http://vimcdoc.sourceforge.net/" rel="nofollow" target="_blank">http://vimcdoc.sourceforge.net/</a><br />　　可以下栽其中的一个PDF版本，里面介绍的很详细，强烈推荐：）<br />　　2．更详细的vim信息可以访问：<br /><a class="bbs" href="http://www.vim.org/" rel="nofollow" target="_blank">http://www.vim.org/</a><br />　　3．一个带有英文注释的.vimrc例子<br />
<p><a class="bbs" href="http://www.vi-improved.org/vimrc.php" rel="nofollow" target="_blank">http://www.vi-improved.org/vimrc.php</a>(王朝网络 wangchao.net.cn)</p>
<p><br /></p>
<p>本文转载自：http://www.wangchao.net.cn/bbsdetail_816650.html </p><img src ="http://www.cppblog.com/jackdongy/aggbug/193607.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-10-21 13:02 <a href="http://www.cppblog.com/jackdongy/archive/2012/10/21/193607.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何在安装了双系统的机器上修改默认启动系统(Linux,Windows) </title><link>http://www.cppblog.com/jackdongy/archive/2012/10/21/193606.html</link><dc:creator>jackdong</dc:creator><author>jackdong</author><pubDate>Sun, 21 Oct 2012 05:01:00 GMT</pubDate><guid>http://www.cppblog.com/jackdongy/archive/2012/10/21/193606.html</guid><wfw:comment>http://www.cppblog.com/jackdongy/comments/193606.html</wfw:comment><comments>http://www.cppblog.com/jackdongy/archive/2012/10/21/193606.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jackdongy/comments/commentRss/193606.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jackdongy/services/trackbacks/193606.html</trackback:ping><description><![CDATA[<p>Linux 是一个非常强大的操作系统，但是完全转换为Linux是比较困难的。鉴于这个原因，很多人更愿意保留双系统（Linux&amp;Windows），Linux boot loader though（被称为Grub），通常默认启动Linux，这里我们讲下如何去改变这一点。</p>
<p>注意：我们使用的Linux版本是Ubuntu。</p>
<p><br /></p>
<p>方法一：图形的方法</p>
<p>如果你还不是很熟练使用命令行，或者说你仅仅是想用美妙的图形界面，这就是你要的方法了！</p>
<p>1）我们需要安装一个程序，这个程序叫startupmanager。我们可以在Ubuntu 软件中心找到它。找到之后就可以点击安装了（install）。</p>
<p><img alt="" align="middle" src="http://img.my.csdn.net/uploads/201209/25/1348555026_6361.png" /><br /></p>
<p><br /></p>
<p>2）安装完成之后，启动它，在提示框中键入你的用户密码。</p>
<p>3）在Boot options选项卡中，点击在Default operating system下的下拉菜单。然后选择Windows作为你的默认启动系统就可以了。</p>
<p><img alt="" align="middle" src="http://img.my.csdn.net/uploads/201209/25/1348555026_6869.png" /><br /></p>
<p><br /></p>
<p>4）完成之后，点击关闭（Close）按钮，你会看到StartUp-Manager正在完成剩余的工作。</p>
<p><img alt="" align="middle" src="http://img.my.csdn.net/uploads/201209/25/1348555026_1820.png" /><br /></p>
<p><br /></p>
<p>方法二：命令行方式</p>
<p>如果你想使用命令行方式，或许你应该也了解一点VI。</p>
<p>1）打开一个Terminal窗口（<strong>CTRL+ALT+T</strong>）</p>
<p>2）查找一下Windows操作系统的启动顺序号。</p>
<p>键入命令：cat /boot/grub/grub.cfg | grep menuentry</p>
<p><img alt="" align="middle" src="http://img.my.csdn.net/uploads/201209/25/1348555026_5321.png" /><br /></p>
<p><br /></p>
<p>在下面的截屏中，你会看到&#8220;Windows 7...&#8221;是第五个入口，但是因为入口号的计数是从0开始的，那么真正的入口号应该是4。</p>
<p>3）编辑 /etc/default/grub</p>
<p>键入命令：sudo vim /etc/default/grub</p>
<p>将GRUB_DEFAULT改为4，然后保存这个文件后退出。</p>
<p><img alt="" align="middle" src="http://img.my.csdn.net/uploads/201209/25/1348555026_7200.png" /><br /></p>
<p><br /></p>
<p>4）对boot loader更新一下刚才的修改。</p>
<p>键入命令：sudo update-grub</p>
<p><br /></p>
<p>Ok了，你可以启动下系统看看了。若有问题欢迎评论。</p>
<p>附录：原文地址：<a href="http://howto.cnet.com/8301-11310_39-20111987-285/how-to-change-the-boot-order-of-a-dual-boot-linux-pc/">http://howto.cnet.com/8301-11310_39-20111987-285/how-to-change-the-boot-order-of-a-dual-boot-linux-pc/</a></p><img src ="http://www.cppblog.com/jackdongy/aggbug/193606.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jackdongy/" target="_blank">jackdong</a> 2012-10-21 13:01 <a href="http://www.cppblog.com/jackdongy/archive/2012/10/21/193606.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>