Linux必学的重要命令(转帖)

(转自:http://www.linuxdiyf.com/viewarticle.php?id=1916)

Linux必学的重要命令 - 红联门户-您身边的Linux学习社区-本站新域名:www.linux110.com-Linux技术文章-Linux教程下载-电脑技术-红旗Linux - 信息资讯 - Linux技术专区 - Linux Shell

首页  信息资讯  相册影集  资源下载   信息搜索  红联Linux论坛 

 

 XML   RSS 2.0   WAP

 Linux安装  Linux Shell  Linux软件下载  基础Linux技能  Linux问题解疑  Linux管理及应用  红旗Linux5.0  RedHat教程  Linux资料下载

 服务器应用  数据库应用  Linux编程开发  Linux内核研究  UniX技术文章  Linux认证  Linux业界新闻  黑客与安全  电脑硬件

 电脑设计在线  Windows软件  Windows维护  发展创业  网文共享  分享天地  影音在线  Linux壁纸与桌面  红联工作室

您的位置: 首页 >> 信息资讯 >> Linux技术专区 >> Linux Shell >> 查看内容

 

Linux必学的重要命令

作者: ccs   发布日期: 2005-8-10    查看数: 1297    出自: http://www.linuxdiyf.com

 

tar

1. 作用

tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户。

2. 格式

tar [主选项+辅选项] 文件或目录

3.主要参数

使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项:

-c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。

-r 把要存档的文件追加到档案文件的未尾。例如用户已经做好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。

-t 列出档案文件的内容,查看已经备份了哪些文件。

-u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。

-x 从档案文件中释放文件。

辅助选项:

-b 该选项是为磁带机设定的,其后跟一数字,用来说明区块的大小,系统预设值为20(20×512 bytes)。

-f 使用档案文件或设备,这个选项通常是必选的。

-k 保存已经存在的文件。例如把某个文件还原,在还原的过程中遇到相同的文件,不会进行覆盖。

-m 在还原文件时,把所有文件的修改时间设定为现在。

-M 创建多卷的档案文件,以便在几个磁盘中存放。

-v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。

-w 每一步都要求确认。

-z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。

3. 应用说明

tar是Tape Archive(磁带归档)的缩写,最初设计用于将文件打包到磁带上。如果下载过Linux的源代码,或许已经碰到过tar文件。tar是一个基于文件的命令,它本质上是连续地、首尾相连地堆放文件。使用tar可以打包整个目录树,这使得它特别适合用于备份。归档文件可以全部还原,或者从中展开单独的文件和目录。备份可以保存到基于文件的设备或磁带设备上。文件可以在还原时重定向,以便将它们重新放到一个与最初保存它们的目录(或系统)不同的目录(或系统)。tar与文件系统无关,可以使用在ext2、ext3、JFS、Reiser和其它文件系统上。它支持各种备份介质,包括软盘、光盘写入器、可重写的光盘、JazZip、磁带、高端磁带等。Linux中以.tar结尾的文件都是用tar创建的。它的使用超出了单纯的备份,可用来把许多不同文件放到一起组成一个易于分开的文件。如果使用Linux源代码安装程序,一定使用过tar文件。这是一个基于文件的命令,它本质上是连续地、首尾相连地堆放文件。tar官方网址是http://www.gnu. org/software/tar/tar.html。

请注意,不要忘了Linux是区分大小写的。例如,tar命令应该总是以小写的形式执行。命令行开关可以是大写、小写或大小写的混合。例如,-t和-T执行不同的功能。文件或目录名称可以混合使用大小写,而且就像命令和命令行开关一样是区分大小写的。

4.应用实例

tar是一个命令行的工具,没有图形界面。使用Konsole打开一个终端窗口,接下来是一个简单的备份命令(在/temp目录中创建一个back.tar的文件,/usr目录中所有内容都包含在其中。):

$tar cvf - /usr > /temp/back.tar

另外,tar命令支持前面第三讲中讲过的crontab命令,可以用crontab工具设置成基于时间的有规律地运行。例如,每晚6点把/usr目录备份到hda—第一个IDE接口的主驱动器 (总是位于第一个硬盘)中,只要将下面语句添加到root的crontab中即可:

$00 06 * * * tar cvf /dev/hda1/usrfiles.tar - /usr

一般情况下,以下这些目录是需要备份的:

◆ /etc 包含所有核心配置文件,其中包括网络配置、系统名称、防火墙规则、用户、组,以及其它全局系统项。

◆ /var 包含系统守护进程(服务)所使用的信息,包括DNS配置、DHCP租期、邮件缓冲文件、HTTP服务器文件、dB2实例配置等。

◆ /home 包含所有默认用户的主目录,包括个人设置、已下载的文件和用户不希望失去的其它信息。

◆ /root 根(root)用户的主目录。

◆ /opt 是安装许多非系统文件的地方。IBM软件就安装在这里。OpenOffice、JDK和其它软件在默认情况下也安装在这里。

有些目录是可以不备份的:

◆ /proc 应该永远不要备份这个目录。它不是一个真实的文件系统,而是运行内核和环境的虚拟化视图,包括诸如/proc/kcore这样的文件,这个文件是整个运行内存的虚拟视图。备份这些文件只是在浪费资源。

◆ /dev 包含硬件设备的文件表示。如果计划还原到一个空白的系统,就可以备份/dev。然而,如果计划还原到一个已安装的Linux 系统,那么备份/dev是没有必要的。

unzip

1. 作用

unzip命令位于/usr/bin目录中,它们和MS DOS下的pkzip、pkunzip及MS Windows中的Winzip软件功能一样,将文件压缩成.zip文件,以节省硬盘空间,当需要的时候再将压缩文件用unzip命令解开。该命令使用权限是所有用户。

2. 格式

unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>]

3. 主要参数

-c:将解压缩的结果显示到屏幕上,并对字符做适当的转换。

-f:更新现有的文件。

-l:显示压缩文件内所包含的文件。

-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。

-t:检查压缩文件是否正确。

-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中。

-v:执行是时显示详细的信息。

-z:仅显示压缩文件的备注文字。

-a:对文本文件进行必要的字符转换。

b:不要对文本文件进行字符转换。

-C:压缩文件中的文件名称区分大小写。

-j:不处理压缩文件中原有的目录路径。

-L:将压缩文件中的全部文件名改为小写。

-M:将输出结果送到more程序处理。

-n:解压缩时不要覆盖原有的文件。

-o:不必先询问用户,unzip执行后覆盖原有文件。

-P<密码>:使用zip的密码选项。

-q:执行时不显示任何信息。

-s:将文件名中的空白字符转换为底线字符。

-V:保留VMS的文件版本信息。

-X:解压缩时同时回存文件原来的UID/GID。

[.zip文件]:指定.zip压缩文件。

[文件]:指定要处理.zip压缩文件中的哪些文件。

-d<目录>:指定文件解压缩后所要存储的目录。

-x<文件>:指定不要处理.zip压缩文件中的哪些文件。

-Z unzip:-Z等于执行zipinfo指令。在Linux中,还提供了一个叫zipinfo的工具,能够察看zip压缩文件的详细信息。unzip最新版本是5.50。

gunzip

1.作用

gunzip命令作用是解压文件,使用权限是所有用户。

2.格式

gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][文件...]

或者gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][目录]

3.主要参数

-a或--ascii:使用ASCII文字模式。

-c或--stdout或--to-stdout:把解压后的文件输出到标准输出设备。

-f或-force:强行解开压缩文件,不理会文件名称或硬连接是否存在,以及该文件是否为符号连接。

-h或--help:在线帮助。

-l或--list:列出压缩文件的相关信息。

-L或--license:显示版本与版权信息。

-n或--no-name:解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其忽略不予处理。

-N或--name:解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其回存到解开的文件上。

-q或--quiet:不显示警告信息。

-r或--recursive:递归处理,将指定目录下的所有文件及子目录一并处理。

-S<压缩字尾字符串>或--suffix<压缩字尾字符串>:更改压缩字尾字符串。

-t或--test:测试压缩文件是否正确无误。

-v或--verbose:显示指令执行过程。

-V或--version:显示版本信息。

4.说明

gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为“.gz”。事实上,gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成。gunzip最新版本是1.3.3 。

unarj

1.作用

unarj解压缩格式为.arj格式的文件,使用权限是所有用户。

2.格式

unarj [eltx][.arj压缩文件]

3.主要参数

e:解压缩.arj文件。

l:显示压缩文件内所包含的文件。

t:检查压缩文件是否正确。

x:解压缩时保留原有的路径。

4.说明

带有.arj扩展名的文件是由用于MS DOS和Windows的ARJ实用程序创建的。因为ARJ是一种不能免费获得源代码的共享件程序,所以在Linux平台上几乎不存在与其功能匹配的工具,要解压缩.arj文件,就要使用unarj实用程序。unarj比ARJ慢,能力也不如ARJ,但至少能够顺利地抽取大多数.arj文件。unarj只能将文件抽取到当前的工作目录、列出档案内容,或者测试档案。从ARJ Software的站点或携带所需Linux发行版的FTP服务器上可以下载unarj源码。另外,unarj通常是基本Linux发行版的一部分,因此可以在主要发行版本的CD-ROM上找到它。如果需要可到所有Linux发行版链接的列表下载,ARJ软件网址为http://www.arjsoft.com,ARJ的下载页面为http://www.arjsoft.com/files.htm。unarj最新版本是2.65,注意unarj选项不是以减号(-)开头的。

mtools

1.作用

mtools实际上是一个命令集合,是DOS文件系统的工具程序,它可以模拟许多DOS命令,使用起来非常方便。使用权限是所有用户。Linux系统提供了一组称为mtools的可移植工具,可以让用户轻松地从标准的DOS软盘上读、写文件和目录。它们对DOS和Linux环境之间交换文件非常有用。mtools的使用非常简单,如果想把软盘里所有的文件都拷贝到硬盘上,那么就可以执行以下命令:

mcopy a:*.*

也就是说,只需要在相应的DOS命令之前加上一个字母“m”,就可以完成对应的功能了。一般Linux发行版本中都有这个软件,可以使用下面命令检查一下。

rpm -qa|grep mtools

如果没有安装,也没有关系,可以从网上下载(http://mtools.linux.lu/)一个最新版本来安装。目前可供下载的最新mtools版本是3.9.9,下载链接为http://mtools.linux.lu/mtools-3.9.9-3.i386.rpm。下载后安装一下即可。

2.包括的命令

mcd 目录名:改变MS DOS下的目录。

mcopy 源文件 目标文件:在MS DOS和Unix之间复制文件。

mdel 文件名:删除MS DOS下的文件。

mdir 目录名:显示MS DOS下的目录。

mformat 驱动器号:在低级格式化的软盘上创建MS DOS文件系统。

rnlabel 驱动器号:产生MS DOS下的卷标

mmd 目录名:建立MS DOS下的目录。

mrd 目录名:删除MS DOS下的目录。

mren 源文件 目标文件:重新命名已存在的MS DOS文件。

mtype 文件名:显示MS DOS文件的内容。

请注意,这些命令和对应的MS DOS命令非常相似。在mtools命令中,“/”和“\”是可以混用的。因为文件列表的是DOS系统下的文档,对大小写并不敏感,所以“CDE”和“cde”在这里是一样的。

3.应用实例

(1)如果把软盘进行快速格式化,可以使用命令mformat:

mformat A:

mtools当初发展的目的是用来处理DOS文件系统的,所以只能用在FAT文件格式的分区上。需要注意的是,如果用mount命令来挂载了FAT16/32分区,那么就不能使用mtools的指令来处理这些分区上的文件。这是因为一旦FAT16/32分区挂到了Linux文件目录下,Linux就会将其视为文件系统本身的一部分,这时如果要对其操作就必须使用Linux本身所附带的指令集。

(2)将DOS盘上的文件htca.c复制到当前目录下,并用ls命令进行验证。

$ mcopy a:\htca.c

$ ls -l htca.c

-rw-r- -r- - 1 xxq xxq 27136 Jan 1 01:80 htca.c

man

1.作用

man命令用来提供在线帮助,使用权限是所有用户。在Linux系统中存储着一部联机使用的手册,以供用户在终端上查找。使用man命令可以调阅其中的帮助信息,非常方便和实用。

2.格式

man 命令名称

man [-acdfhkKtwW] [-m system] [-p string] [-C config_file] [-M path] [-P pager] [-S section_list] [section] name ...

1. 参数

-C config_file:指定设定文件man.conf,缺省值是/etc/man.conf。

-M path:指定了联机手册的搜寻路径, 如果没有指定则使用环境变数MANPATH的设定;如果没有使用MANPATH, 则会使用/usr/lib/man.conf内的设定;如果MANPATH是空字串,则表示使用缺省值。

-P pager:指定使用何种pager.man会优先使用此选项设定,然后是依环境变数MANPAGER设定,然后是环境变数PAGER;man缺省使用/usr/bin/less -is。

-S section_list man:所搜寻的章节列表(以冒号分隔),此选项会覆盖环境变数MANSECT的设定。

-a man:缺省情况是在显示第一个找到的手册之后,就会停止搜寻,使用此选项会强迫man继续显示所有符合name的联机手册。

-c:即使有最新的cat page,也继续对联机手册重新作排版,本选项在屏幕的行列数改变时或已排版的联机手册损坏时特别有意义。

-d:不要真的显示联机手册,只显示除错讯息。

-D:同时显示联机手册与除错讯息。

-h:显示求助讯息然后结束程式 。

-K:对所有的联机手册搜寻所指定的字串。请注意,本功能回应速度可能很慢,如果指定section(区域)会对速度有帮助。

-m system:依所指定的system名称而指定另一组的联机手册。

man:是manual(手册)的缩写。在输入命令有困难时,可以立刻得到这个文档。例如, 如果使用ps命令时遇到困难,可以输入man ps得到帮助信息,此时会显示出ps的手册页(man page)。

由于手册页man page是用less程序来看的(可以方便地使屏幕上翻和下翻), 所以在man page里可以使用less的所有选项。

less中比较重要的功能键有:

[q] 退出;

[Enter] 一行行地下翻;

[Space] 一页页地下翻;

上翻一页;

[/] 后跟一个字符串和[Enter]来查找字符串;

[n] 发现上一次查找的下一个匹配。

unencode

1.作用

unencode命令可以把一个二进制文件表编码为一个文本文件,使用权限是所有用户。

2.格式

uuencode [-hv] [源文件] 目标文件

3.主要参数

-h:列出指令使用格式(help) 。

-v:列出版本信息。

4.应用说明

uuencode指令可以将二进制文件转化成可使用电子邮件发送的ASCII编码形式。uuencode编码后的资料都以 begin开始,以end作为结束,且通常其中的每一行的开始均为“M”,中间部分是编码过的文件,编码后的文件比源文件要大一些。

uudecode

1.作用

uudecode命令用来将uuencode编码后的档案还原,uudecode只会将begin与end标记之间的编码资料还原,程序会跳过标记以外的资料。它的使用权限为所有用户。

2.格式

uuencode [-hv] [file1 ...]

3.主要参数

-h:列出指令使用格式(help)。

-v:列出版本信息。

 

如果你有任何疑问,讨论问题等请点击这到红联论坛中来! 网址:http://www.linux110.com/bbs

 

【论坛浏览】  【我来说两句】  【打印】  字体 【大】 【中】 【小】  【关闭】

 

相关评论

 

作者: ABC  发布日期: 2005-8-13

不错,顶

作者: aiwuxian23  发布日期: 2006-4-06

好东西!

 

共有评论数 2 / 每页显示数 10

 

 

 

我来说两句

 

请遵守国家法律和互联网法规。

您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。

 

热点主题

从零开始:Linux基础教程之命令的使用

shell 编程的最好理解

一切从基础开始Linux入门命令篇

在Linux世界驰骋系列——Shell编程

两个很详细的shell 实例

Linux Shell命令集锦

shell 脚本初步,启动可执行 jar 文件

VI高级命令集锦

利用shell编程实现DOS风格的Linux命令行

Linux的命令组成

 

最新主题

用这个命令能够看到主机中的网络设备

创建(进入)带空格的目录名

三种主要的 Shell 与其分支,Shell 的功用

让Linux命令加速

菜鸟学习SHELL第一课---地址本的脚本

命令行CALL程序时传递数字参数总结

shell下十二种读文件的方法

shell历险之——引用的迷途

awk用法小结

Shell Script简介

网络资源推荐

OPEN-LAB IT教育Linux技术中心                             前往红联论坛讨论

 

广告业务 站务联系: lz@linuxdiyf.com 关于红联论坛 与本站交流! 红联论坛致力站暨站点交流

 

版权所有  2006  红联门户-您身边的Linux学习社区-本站新域名:www.linux110.com-Linux技术文章-Linux教程下载-电脑技术-红旗Linux   最佳分辨率  1024 X 768

Copyright   ©  http://www.linuxdiyf.com  All rights reserved.  Powered by supstie™ V4.0

今天,在家里把学习日记的开发环境安上了

  第二次安,有点门路了,大部分安装离开参考资料能搞定了。发现我还不会很好的使用进入linux殿堂的man命令。

  这次的安装共享了windows2000下的mysql数据目录,需要新加一个用户:dbuser@localhost.localdomain才能使学习日记运行起来。而且还需要把新安装的linux版本的数据目录里的一个localhost.localdomain.pid文件拷入原来的windows下的mysql数据目录才行。

  本来想共享windows2000下的eclipse中的学习日记工程,可是把它导入后发现WEB-INF目录名变成了小写。在操作系统文件目录窗口中看windows2000下的目录名还是大写,搞不懂了(也许是在linux中装载windows文件系统时在eclipse2.1中的形成的一个bug?这有待以后进一步验证)。只得从cvs库中重新导入才解决问题。

  mysql4.0.17的两个rpm包是不能改变安装目录的,也就是说是:not relocateable。并不能像帖子(mysql的rpm包默认安装路径问题;RPM命令手册(转帖两篇)http://www.123go.org.cn/disDiaryContentAction.do?searchDiaryID=1767&goalID=1767&naviStr=a10ac0ad0)中说的那样可以改变安装目录。

  另外,在linux下的eclipse2.1中安装那个EclipseColorer-take5_0.6.0(net.sf.colorer_0.6.0)语法高亮的插件,必须把其中的colorer目录拷入/usr/local/share才能正常使用(只拷入其中的catalog.xml文件不行),否则会报找不到catalog.xml文件的错(Error in initialization of native part of the Colorer library. This can be caused by absent net_sf_colorer.dll (libnet_sf_colorer.so) in paths of java machine. Or, colorer can't find catalog.xml file, which must be placed in '%PLUGIN_DIR%/colorer/catalog.xml' ParserFactoryException: Can't find suitable catalog.xml file. Check your program settings.)。

  colorer的readme文件:(文件名:readme)

 

  This archive contains Java Edition of the Colorer-take5 library.

  It includes Java interfaces to the Library and an experimental

  plugin for the Eclipse platform

    http://www.eclipse.org

  To install plugin into Eclipse you have to copy content

  of this directory into %ECLIPSE_HOME%/plugins directory.

  This package contains plugin's native library, compiled for

  win32 ant Linux platforms. For Linux issues, read LINUX file.

  To compile Colorer-take5 library to use with MacOSX systems,

  read MACOS file.

  If you are using Colorer with other tools/applications (and have

  your own HRC base), you can specify path to the 'catalog.xml' file

  with one of the standard locations:

    - %HOME%/.colorer5catalog (or %HOMEPATH%, %SYSTEMROOT%)

    - %COLORER5CATALOG%

    - /usr/share/colorer/catalog.xml

  In this case you can delete 'colorer' folder of the EclipseColorer

  package, and it will start to read configuration data from the global source.

  All files in this package are subject to the Mozilla Public License 1.1

  You can find detailed description and license agreement on

    http://colorer.sf.net/

  For more information see 'index.html' in the 'doc' folder of

  the Colorer Library package distribution or visit

    http://colorer.sf.net/

  Thanks for using Colorer,

    Igor Russkih <cail@nm.ru>

  其中的linux说明文件:(文件名:linux)

 

  Colorer Library is not yet fully tested on Linux systems,

  and there can be some problems.

  This version of Colorer Library comes with the native part, compilied

  with GNU GCC 3.2 c++ compiler under Mandrake Linux 9.0.

  I've tested it with Eclipse 2.1 (gtk) under jdk1.4.1 and it works fine.

  However, you can encounter some problems with library dependencies.

从下面这个文件来看,也许把eclipse安在目录:/usr/share下面就会正常也说不一定?(文件名:ColorDemo.sh)

#!/bin/bash

# Self runnable version of Colorer library JNI interface

# Uses SWT API.

# To use it, please provide full path to colorer/catalog.xml file

# in %HOME%/.colorer5catalog  file.

ECLIPSE_HOME=/usr/share/eclipse

ECLIPSE_VERSION=2.1.0

# Requires inclusion of additional jars:

ECLIPSE_TOOLKIT=gtk

#ECLIPSE_TOOLKIT=motif

OS=linux

ARCH=x86

SWT_JAR=${ECLIPSE_HOME}/plugins/org.eclipse.swt.${ECLIPSE_TOOLKIT}_${ECLIPSE_VERSION}/ws/${ECLIPSE_TOOLKIT}/swt.jar:${ECLIPSE_HOME}/plugins/org.eclipse.swt.${ECLIPSE_TOOLKIT}_${ECLIPSE_VERSION}/ws/${ECLIPSE_TOOLKIT}/swt-pi.jar

SWT_LIB=${ECLIPSE_HOME}/plugins/org.eclipse.swt.${ECLIPSE_TOOLKIT}_${ECLIPSE_VERSION}/os/${OS}/${ARCH}

env LD_LIBRARY_PATH=os/${OS}/${ARCH}:${SWT_LIB}:${LD_LIBRARY_PATH} java -classpath colorer.jar:${SWT_JAR} net.sf.colorer.swt.ColorerDemo

MySQL 存取權限系統(转帖)

MySQL中文參考手冊-權限(转自:http://sy3es.tnc.edu.tw/teaching/php_mysql/mysql.htm)

1 權限系統做什麼

MySQL權限系統的主要功能是証實連接到一台給定主機的一個用戶,並且賦予該用戶在一個資料庫上select、 insert、update和delete的權限。

附加的功能包括有一個匿名的用戶和對於MySQL特定的功能例如LOAD DATA INFILE進行授權及管理操作的能力。

2 MySQL 用戶名和密碼

由MySQL使用用戶名和密碼的方法與Unix或Windows使用的方式有很多不同之處:

    * MySQL使用於認証目的的用戶名,與Unix用戶名(登錄名字)或Windows用戶名無關。

    * MySQL用戶名最長可以是16各字符﹔典型地,Unix用戶名限制為8個字符。

    * MySQL密碼與Unix密碼沒關系。在你使用登錄到一台Unix機器密碼和你使用在那台機器上存取一個資料庫的密碼之間沒有必要有關聯。

    * MySQL加密密碼使用了一個Unix登錄期間所用的不同算法,使用PASSWORD()和ENCRYPT()函數部分。

3 使你的密碼安全

以一種暴露的可被其他用戶發現的方式指定你的密碼是不妥當的。當你運行客戶程式時,你可以使用下列方法指定你的密碼,還有每個方法的風險評估:

    * 使用一個在命令行上-pyour_pass或--password=your_pass的選項。這很方便但是不安全,因為你的密碼對系統狀態程式(例如ps)變得可見,它可以被其他的用戶調用來顯示命令行。(一般MySQL客戶在他們的初始化順序期間用零覆蓋命令行參數,但是仍然有一個短暫間隔時間內參數值可見的。)

    * 使用一個-p或--password選項(沒有指定your_pass值)。在這種情況下,客戶程式請求來自終端的密碼:

shell>mysql - u  user_name - p

Enter password: ********

      客戶回應“*”字符到作為輸入你的密碼的終端使得旁觀者不能看見它。因為它對其他用戶不可見,與在命令行上指定它相比,這樣進入你的密碼更安全。然而,這個輸入一個密碼的方法僅僅為你交互式運行程式是合適的。如果你想要從非交互式運行的一個腳本調用一個客戶,就沒有從終端輸入入密碼的機會。

4  MySQL提供的權限

權限資訊用user、db、host、tables_priv和columns_priv表被儲存在mysql資料庫中(即在名為mysql的資料庫中)。在MySQL啟動時和在6.9 權限修改何時生效所說的情況時,伺服器讀入這些資料庫表內容。

 

5 權限系統工作原理

MySQL權限系統保証所有的用戶可以嚴格地做他們假定被允許做的事情。當你連接一個MySQL伺服器時, 你的身份由你從那連接的主機和你指定的用戶名來決定,系統根據你的身份和你想做什麼來授予權限。

MySQL在認定身份中考慮你的主機名和用戶名字,是因為有很小的原因假定一個給定的用戶在網際網路上屬於同一個人。例如,用戶從whitehouse.gov連接的bill不必和從mosoft.com連接bill是同一個人。 MySQL通過允許你區分在不同的主機上碰巧有同樣名字用戶來處理它:你可以對從whitehouse.gov連接授與bill一個權限集,而為從microsoft.com的連接授予一個不同的權限集。

MySQL存取控制包含2個階段:

    * 階段1:伺服器檢查你是否允許連接。

    * 階段2:假定你能連接,伺服器檢查你發出的每個請求。看你是否有足夠的權限實施它。例如,如果你從資料庫中一個表選取(select)行或從資料庫拋棄一個表,伺服器確定你對表有select權限或對資料庫有drop權限。

 

6存取控制, 階段1:連接証實

當你試圖聯接一個MySQL伺服器時,伺服器基於你的身份和你是否能通過供應正確的密碼驗証身份來接受或拒絕連接。如果不是,伺服器完全具結你的存取,否則,伺服器接受連接,然後進入階段2並且等待請求。

你的身份基於2個資訊:

    * 你從那個主機連接

    * 你的MySQL用戶名

身份檢查使用3個user表(Host, User和Password)範圍字段執行。伺服器只有在一個user表條目匹配你的主機名和用戶名並且你提供了正確的密碼時才接受連接。

在user表範圍字段可以如下被指定:

    * 一個Host值可以是主機名或一個IP數字,或'localhost'指出本地主機。

    * 你可以在Host字段裡使用通配符字符“%”和“_”。

    * 一個Host值'%'匹配任何主機名,一個空白Host值等價於'%'。注意這些值匹配能創建一個連接到你的伺服器的任何主機!

    * 通配符字符在User字段中不允許,但是你能指定空白的值,它匹配任何名字。如果user表匹配到來的連接的條目有一個空白的用戶名,用戶被認為是匿名用戶(沒有名字的用戶),而非客戶實際指定的名字。這意味著一個空白的用戶名被用於在連接期間的進一步的存取檢查(即,在階段2期間)。

    * Password字段可以是空白的。這不意味著匹配任何密碼,它意味著用戶必須不指定一個密碼進行連接。



7 存取控制,階段2:請求証實

一旦你建立了一個連接,伺服器進入階段2。對在此連接上進來的每個請求,伺服器檢查你是否有足夠的權限來執行它,它基於你希望執行的操作類型。這正是在授權表中的權限字段發揮作用的地方。這些權限可以來子user、db、host、tables_priv或columns_priv表的任何一個。授權表用GRANT和REVOKE命令操作。見7.26 GRANT和REVOKE 句法。(你可以發覺參考6.6 權限系統怎樣工作很有幫助,它列出了在每個權限表中呈現的字段。)

user表在一個全局基礎上授予賦予你的權限,該權限不管當前的資料庫是什麼均適用。例如,如果user表授予你delete權限, 你可以刪除在伺服器主機上從任何資料庫刪除行!換句話說,user表權限是超級用戶權限。只把user表的權限授予超級用戶如伺服器或資料庫主管是明智的。對其他用戶,你應該把在user表中的權限設成'N'並且僅在一個特定資料庫的基礎上授權, 使用db和host表。

db和host表授予資料庫特定的權限。在範圍字段的值可以如下被指定:

    * 通配符字符“%”和“_”可被用於兩個表的Host和Db字段。

    * 在db表的'%'Host值意味著“任何主機”,在db表中一個空白Host值意味著“對進一步的資訊咨詢host表”。

    * 在host表的一個'%'或空白Host值意味著“任何主機”。

    * 在兩個表中的一個'%'或空白Db值意味著“任何資料庫”。

    * 在兩個表中的一個空白User值匹配匿名用戶。

db和host表在伺服器啟動時被讀取和排序(同時它讀user表)。db表在Host、Db和User範圍字段上排序,並且host表在Host和Db範圍字段上排序。對於user表,排序首先放置最特定的值然後最後最不特定的值,並且當伺服器尋找匹配入條目時,它使用它找到的第一個匹配。

tables_priv和columns_priv表授予表和列特定的權限。在範圍字段的值可以如下被指定:

    * 通配符“%”和“_”可用在使用在兩個表的Host字段。

    * 在兩個表中的一個'%'或空白Host意味著“任何主機”。

    * 在兩個表中的Db、Table_name和Column_name字段不能包含通配符或空白。

tables_priv和columns_priv表在Host、Db和User字段上被排序。這類似於db表的排序,盡管因為只有Host字段可以包含通配符,但排序更簡單。

 

8 權限更改何時生效

當mysqld啟動時,所有的授權表內容被讀進儲存器並且從那點生效。

用GRANT、REVOKE或SET PASSWORD對授權表施行的修改會立即被伺服器注意到。

如果你手工地修改授權表(使用INSERT、UPDATE等等),你應該執行一個FLUSH PRIVILEGES語句或運行mysqladmin flush-privileges告訴伺服器再裝載授權表,否則你的改變將不生效,除非你重啟伺服器。

當伺服器注意到授權表被改變了時,現存的客戶連接有如下影響:

    * 表和列權限在客戶的下一次請求時生效。

    * 資料庫權限改變在下一個USE db_name命令生效。

全局權限的改變和密碼改變在下一次客戶連接時生效。

9 建立初始的MySQL權限

你的安裝初始時廣開大門,你首先應該做的事情之一是為MySQL root用戶指定一個密碼。你可以做如下(注意,你使用PASSWORD()函數指定密碼):

shell> mysql -u root mysql

mysql> UPDATE user SET Password=PASSWORD('new_password')

           WHERE user='root';

mysql> FLUSH PRIVILEGES;

在MySQL 3.22和以上版本中,你可以使用SET PASSWORD語句:

shell> mysql -u root mysql

mysql> SET PASSWORD FOR root=PASSWORD('new_password');

設置密碼的另一種方法是使用mysqladmin命令:

shell> mysqladmin -u root password new_password

注意:如果你使用第一種方法在user表裡直接更新密碼,你必須告訴伺服器再次讀入授權表(用FLUSH PRIVILEGES),因為否則改變將不被注意到。

一旦root密碼被設置,此後當你作為root與伺服器連接時,你必須供應那個密碼。

 

10 向MySQL增加新用戶權限

你可以有2個不同的方法增加用戶:通過使用GRANT語句或通過直接操作MySQL授權表。比較好的方法是使用GRANT語句,因為他們是更簡明並且好像錯誤少些。

下面的例子顯示出如何使用mysql客戶安裝新用戶。這些例子假定權限根據以前的章節描述的內定被安裝。這意味著為了改變,你必須在mysqld正在運行同一台機器上,你必須作為MySQL root用戶連接,並且root用戶必須對mysql資料庫有insert權限和reload管理權限。另外,如果你改變了root用戶密碼,你必須如下的mysql命令指定它。

你可以通過發出GRANT語句增加新用戶:

shell> mysql --user=root mysql

mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost

           IDENTIFIED BY 'something' WITH GRANT OPTION;

mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%"

           IDENTIFIED BY 'something' WITH GRANT OPTION;

mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;

mysql> GRANT USAGE ON *.* TO dummy@localhost;

這些GRANT語句安裝3個新用戶:

monty

    可以從任何地方連接伺服器的一個完全的超級用戶,但是必須使用一個密碼('something'做這個。注意,我們必須對monty@localhost和monty@"%"發出GRANT語句。如果我們增加localhost條目,對localhost的匿名用戶條目在我們從本地主機連接接時由mysql_install_db創建的條目將優先考慮,因為它有更特定的Host字段值,所以以user表排列順序看更早到來。

admin

    可以從localhost沒有一個密碼進行連接並且被授予reload和process管理權限的用戶。這允許用戶執行mysqladmin reload、mysqladmin refresh和mysqladmin flush-*命令,還有mysqladmin processlist。沒有授予資料庫有關的權限。他們能在以後通過發出另一個GRANT語句授權。

dummy

    可以不用一個密碼連接的一個用戶,但是只能從本地主機。全局權限被設置為'N'--USAGE權限類型允許你無需權限就可設置一個用戶。它假定你將在以後授予資料庫相關的權限。

你也可以直接通過發出INSERT語句增加同樣的用戶存取資訊,然後告訴伺服器再次裝入授權表:

shell> mysql --user=root mysql

mysql> INSERT INTO user VALUES('localhost','monty',PASSWORD('something'),

                'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'),

                'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y')

mysql> INSERT INTO user SET Host='localhost',User='admin',

                 Reload_priv='Y', Process_priv='Y';

mysql> INSERT INTO user (Host,User,Password)

                        VALUES('localhost','dummy','');

mysql> FLUSH PRIVILEGES;

取決於你的MySQL版本,對上述,你可能必須使用一個不同數目'Y'值(在3.22.11以前的版本有更少的權限列)。對admin用戶,只用在3.22.11開始的版本具有的更加可讀的INSERT擴充的語法。

注意,為了設置一個超級用戶,你只需創造一個user表條目,其權限字段設為'Y'。不需要db或host表的條目。

在user表中的權限列不是由最後一個INSERT語句明確設置的(對dummy用戶),因此那些列被賦予內定值'N'。這是GRANT USAGE做的同樣的事情。

下列例子增加一個用戶custom,他能從主機localhost、server.domain和whitehouse.gov連接。他只想要從localhost存取bankaccount資料庫,從whitehouse.gov存取expenses資料庫和從所有3台主機存取customer資料庫。他想要從所有3台主機上使用密碼stupid。

為了使用GRANT語句設置個用戶的權限,運行這些命令:

shell> mysql --user=root mysql

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

           ON bankaccount.*

           TO custom@localhost

           IDENTIFIED BY 'stupid';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

           ON expenses.*

           TO custom@whitehouse.gov

           IDENTIFIED BY 'stupid';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

           ON customer.*

           TO custom@'%'

           IDENTIFIED BY 'stupid';

通過直接修改授權表設置用戶權限,運行這些命令(注意,在結束時FLUSH PRIVILEGES):

shell> mysql --user=root mysql

mysql> INSERT INTO user (Host,User,Password)

       VALUES('localhost','custom',PASSWORD('stupid'));

mysql> INSERT INTO user (Host,User,Password)

       VALUES('server.domain','custom',PASSWORD('stupid'));

mysql> INSERT INTO user (Host,User,Password)

       VALUES('whitehouse.gov','custom',PASSWORD('stupid'));

mysql> INSERT INTO db

       (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,

        Create_priv,Drop_priv)

       VALUES

       ('localhost','bankaccount','custom','Y','Y','Y','Y','Y','Y');

mysql> INSERT INTO db

       (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,

        Create_priv,Drop_priv)

       VALUES

       ('whitehouse.gov','expenses','custom','Y','Y','Y','Y','Y','Y');

mysql> INSERT INTO db

       (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,

        Create_priv,Drop_priv)

       VALUES('%','customer','custom','Y','Y','Y','Y','Y','Y');

mysql> FLUSH PRIVILEGES;

頭3個INSERT語句增加user表條目,允許用戶custom用給定密碼從不同的主機進行連接,但是沒有授予任何許可(所有權限被設置為內定值'N')。後3個INSERT語句增加db表條目,授予custom以bankaccount、expenses和customer資料庫權限,但是只能在從正確的主機存取時。通常,在授權表直接被修改時,伺服器必須被告知再次裝入他們(用FLUSH PRIVILEGES)以便使權限修改生效。

如果你想要給特定的用戶從一個給定的域上的任何機器上存取權限,你可以發出一個如下的GRANT語句:

mysql> GRANT ...

           ON *.*

           TO myusername@"%.mydomainname.com"

           IDENTIFIED BY 'mypassword';

為了通過直接修改授權表做同樣的事情,這樣做:

mysql> INSERT INTO user VALUES ('%.mydomainname.com', 'myusername',

           PASSWORD('mypassword'),...);

mysql> FLUSH PRIVILEGES;

 

11 怎樣設置密碼

在前面小節的例子裡說明了一個重要的原則:當你使用INSERT或UPDATE語句儲存一個非空的密碼時,你必須使用PASSWORD()函數加密它。這是因為在user表刈脛加密形式儲存密碼,而不是作為純文本。如果你忘記這個事實,你可能像這樣試圖設置密碼:

shell> mysql -u root mysql

mysql> INSERT INTO user (Host,User,Password) VALUES('%','jeffrey','biscuit');

mysql> FLUSH PRIVILEGES

結果是純文本值'biscuit'作為密碼被儲存在user表中。在用戶jeffrey試圖用這個密碼連接伺服器時,mysql客戶用PASSWORD()加密它並且將結果送給伺服器,伺服器比較在user表中的值(它是純文本值'biscuit')和加密的密碼(而不是 'biscuit'),比較失敗並且伺服器拒絕連接:

shell> mysql -u jeffrey -pbiscuit test

Access denied

因為當他們被插入user表時,密碼必須被加密,相反,INSERT語句應該像這樣被指定:

mysql> INSERT INTO user (Host,User,Password)

       VALUES('%','jeffrey',PASSWORD('biscuit'));

當你使用SET PASSWORD語句時,你也必須使用PASSWORD()函數:

mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');

如果你使用GRANT ... IDENTIFIED BY語句或mysqladmin password命令設置密碼,PASSWORD()函數是不必要的。他們都考慮到為你加密密碼,多以你可像這樣指定一個密碼'biscuit':

mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';

shell> mysqladmin -u jeffrey password biscuit

注意: PASSWORD()不是以在Unix密碼加密的同樣方法施行密碼加密。你不應該假定如果你的Unix密碼和你的MySQL密碼是一樣的,PASSWORD()將導致與在Unix密碼文件被儲存的同樣的加密值。

realplay for linux的下载地址(转)

用google搜了一下,出来这个页面,下了一个,速度还可以:https://helixcommunity.org/download.php/1589/RealPlayer-10.0.6.776-20050915.i586.rpm

http://lists.helixcommunity.org/pipermail/community-allwww-cvs/2006-March/001596.html

[Community-allwww-cvs] www/2005/downloads index.html,1.12,1.13

bobclark at helixcommunity.org bobclark at helixcommunity.org

Wed Mar 22 12:38:55 PST 2006

    * Previous message: [Community-allwww-cvs] www/2005/releases/hx1gold HX1_0_7ReleaseNotes.html, 1.1, 1.2

    * Next message: [Community-allwww-cvs] www index.html,1.75,1.76

    * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

Update of /cvsroot/player/www/2005/downloads

In directory cvs02.internal.helixcommunity.org:/tmp/cvs-serv26243

Modified Files:

index.html

Log Message:

updated for release of 10.0.7 and 1.0.7

Index: index.html

===================================================================

RCS file: /cvsroot/player/www/2005/downloads/index.html,v

retrieving revision 1.12

retrieving revision 1.13

diff -u -d -r1.12 -r1.13

--- index.html 10 Oct 2005 21:45:57 -0000 1.12

+++ index.html 22 Mar 2006 20:38:53 -0000 1.13

@@ -37,7 +37,7 @@

     <tr style="font-weight: bold;">

       <td colspan="4" rowspan="1"

  style="vertical-align: top; width: 181px;">Helix

-Player 1.0.6 Gold</td>

+Player 1.0.7 Gold</td>

       <td style="vertical-align: top; width: 288px;"><br>

       </td>

     </tr>

@@ -45,23 +45,23 @@

       <td style="vertical-align: top;">  Linux/x86<br>

       </td>

       <td style="vertical-align: top; text-align: center;"><a

- href="https://player.helixcommunity.org/2005/releases/hx1gold/HX1_0_6ReleaseNotes.html">View</a><br>

+ href="https://player.helixcommunity.org/2005/releases/hx1gold/HX1_0_7ReleaseNotes.html">View</a><br>

       </td>

       <td style="vertical-align: top;"><a

- href="https://helixcommunity.org/download.php/1587/HelixPlayer-1.0.6.778-20050916.i586.rpm">RPM</a><br>

+ href="https://helixcommunity.org/download.php/1914/HelixPlayer-1.0.7.784-20060201.i586.rpm">RPM</a><br>

       </td>

       <td style="vertical-align: top; width: 181px;"><a

- href="https://helixcommunity.org/download.php/1586/hxplay-1.0.6.778-linux-2.2-libc6-gcc32-i586.bin">Installer</a><br>

+ href="https://helixcommunity.org/download.php/1913/hxplay-1.0.7.784-linux-2.2-libc6-gcc32-i586.bin">Installer</a><br>

       </td>

       <td style="vertical-align: top; text-align: center; width: 288px;"><a

- href="https://helixcommunity.org/download.php/1585/hxplay-1.0.6-source.tar.bz2">bz2

+ href="https://helixcommunity.org/download.php/1915/hxplay-1.0.7-source.tar.bz2">bz2

       </a><br>

       </td>

     </tr>

     <tr>

       <td colspan="4" rowspan="1"

  style="vertical-align: top; width: 181px;"><span

- style="font-weight: bold;">RealPlayer 10.0.6 Gold</span><br>

+ style="font-weight: bold;">RealPlayer 10.0.7 Gold</span><br>

       </td>

       <td style="vertical-align: top; width: 288px;"><br>

       </td>

@@ -70,16 +70,16 @@

       <td style="vertical-align: top;">  Linux/x86<br>

       </td>

       <td style="vertical-align: top; text-align: center;"><a

- href="https://player.helixcommunity.org/2005/releases/rp10gold/RP10_0_6ReleaseNotes.html">View</a><br>

+ href="https://player.helixcommunity.org/2005/releases/rp10gold/RP10_0_7ReleaseNotes.html">View</a><br>

       </td>

       <td style="vertical-align: top;"><a

- href="https://helixcommunity.org/download.php/1589/RealPlayer-10.0.6.776-20050915.i586.rpm">RPM</a><br>

+ href="https://helixcommunity.org/download.php/1917/RealPlayer-10.0.7.785-20060201.i586.rpm">RPM</a><br>

       </td>

       <td style="vertical-align: top; width: 181px;"><a

- href="https://helixcommunity.org/download.php/1590/realplay-10.0.6.776-linux-2.2-libc6-gcc32-i586.bin">Installer</a><br>

+ href="https://helixcommunity.org/download.php/1916/realplay-10.0.7.785-linux-2.2-libc6-gcc32-i586.bin">Installer</a><br>

       </td>

-      <td style="vertical-align: top; text-align: center; width: 288px;"><a

- href="https://helixcommunity.org/download.php/1591/realplay-10.0.6-source.tar.bz2">bz2</a><br>

+      <td style="vertical-align: top; text-align: center; width: 288px;"><!--<a

+ href="https://helixcommunity.org/download.php/????/realplay-10.0.7-source.tar.bz2">bz2</a>--><br>

       </td>

     </tr>

     <tr>

@@ -229,6 +229,30 @@

       </td>

     </tr>

     <tr>

+      <td>RealPlayer 10.0.6 Gold</td>

+      <td>9/29/2005</td>

+      <td><a href="https://player.helixcommunity.org/2005/releases/rp10gold/RP10_0_6ReleaseNotes.html">View</a></td>

+      <td></td>

+      <td><a href="https://helixcommunity.org/download.php/1589/RealPlayer-10.0.6.776-20050915.i586.rpm">RPM</a><br>

+      <a href="https://helixcommunity.org/download.php/1590/realplay-10.0.6.776-linux-2.2-libc6-gcc32-i586.bin">Installer</a></td>

+      <td><a href="https://helixcommunity.org/download.php/1604/realplay-10.0.6.1205-sunos-5.8-sparc-studio10.bin">Installer</a><br>

+      <small>(experimental)</small></td>

+      <td></td>

+      <td><a href="https://helixcommunity.org/download.php/1591/realplay-10.0.6-source.tar.bz2">bz2</a></td>

+    </tr>

+    <tr>

+      <td>Helix Player 1.0.6 Gold</td>

+      <td>9/29/2005</td>

+      <td><a href="https://player.helixcommunity.org/2005/releases/hx1gold/HX1_0_6ReleaseNotes.html">View</a></td>

+      <td></td>

+      <td><a href="https://helixcommunity.org/download.php/1587/HelixPlayer-1.0.6.778-20050916.i586.rpm">RPM</a> <br>

+      <a href="https://helixcommunity.org/download.php/1586/hxplay-1.0.6.778-linux-2.2-libc6-gcc32-i586.bin">Installer</a></td>

+      <td></td>

+      <td></td>

+      <td><a href="https://helixcommunity.org/download.php/1585/hxplay-1.0.6-source.tar.bz2">bz2

+      </a></td>

+    </tr>

+    <tr>

       <td>RealPlayer 10.0.5 Gold</td>

       <td>06/24/2005</td>

       <td><a

    * Previous message: [Community-allwww-cvs] www/2005/releases/hx1gold HX1_0_7ReleaseNotes.html, 1.1, 1.2

    * Next message: [Community-allwww-cvs] www index.html,1.75,1.76

    * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

More information about the Community-allwww-cvs mailing list

Linux下的压缩/解压缩工具(转贴2篇)

    总是记不住tar命令的参数顺序,tar命令的执行讲究参数的顺序,如: tar -xfzv filename 就是错误的,执行如下:

[root@localhost tool]# tar -xfzv firefox-1.5.0.2.tar.gz

tar: zv: Cannot open: 没有那个文件或目录

tar: Error is not recoverable: exiting now

还有前面加不加"-",好像没有区别,如下两个命令是一样的不知是怎么一回事:

tar -xzvf firefox-1.5.0.2.tar.gz

和tar xzvf firefox-1.5.0.2.tar.gz

我在linux下常用的几种压缩、解压软件(实际上下面的第一篇转帖中都有):

1)压缩: tar cfvz FileName.tar.gz  DirName

  解压: tar xfvz FileName.tar.gz

2)压缩:rar a FileName.rar DirName

  解压: rar x FileName.rar

3)压缩: zip -r FileName.zip DirName (下面的转帖中少了一个参数 -r,不能压缩文件夹内的全部文件)

  解压: unzip FileName.zip

下面是我对一个包含主要是htm文件和gif等图片文件的目录的各种压缩格式的压缩率比较。

原目录的大小是8445952bytes,

命令: tar cfv /home/mdx/wisdom_compress/wisdom.tar ./wisdom 生成的打包文件wisdom.tar大小是8222729bytes,与原目录大小差不多;

命令:rar a /home/mdx/wisdom_compress/wisdom.rar ./wisdom 生成的压缩文件wisdom.rar大小为4015632bytes;

命令:zip -r /home/mdx/wisdom_compress/wisdom.zip ./wisdom 生成的压缩文件wisdom.zip大小为4272032bytes,和上面用rar软件生成的wisdom.rar大小差不多;

命令:tar cfvz ./wisdom_compress/wisdom.tar.gz wisdom 生成的打包压缩文件wisdom.tar.gz大小为2842023bytes;

命令:tar cfvj ./wisdom_compress/wisdom.tar.bz wisdom生成的打包压缩文件wisdom.tar.bz大小为2589155bytes,和上面用tar cfvz生成的wisdom.tar.gz差不多;

所以,就缺省的方式来说,tar的压缩效果在文本文件为主的目录中要好于rar和zip软件。

下面是统计的具体例子:


[mdx@localhost mdx]$ du -sb ./wisdom

8445952 ./wisdom

[mdx@localhost mdx]$ ls -la ./wisdom_compress/

总用量 24066

drwxrwxr-x    2 mdx      mdx          1024  2月 26 15:49 .

drwx------   26 mdx      mdx          5120  2月 26 11:57 ..

-rw-rw-r--    1 mdx      mdx       4015632  2月 26 15:47 wisdom.rar

-rw-rw-r--    1 mdx      mdx       8222720  2月 26 15:49 wisdom.tar

-rw-rw-r--    1 mdx      mdx       2589155  2月 26 11:09 wisdom.tar.bz

-rw-rw-r--    1 mdx      mdx       2589155  2月 26 11:22 wisdom.tar.bz2

-rw-rw-r--    1 mdx      mdx       2842023  2月 26 11:02 wisdom.tar.gz

-rw-rw-r--    1 mdx      mdx       4272032  2月 26 15:20 wisdom.zip

[mdx@localhost mdx]$

在网站上显示每日一句英语和在帖子中背单词(背单词没

背单词的插件在asp和php系统中均比较多,如:dvbbs,phpwind,dicuz,leadbbs...,但是在jsp中好像还没有。还没有找到纯javascript的背单词插件。

每日一句引自金山词霸:

代码来自网上,忘了地址:

<div id="daily" align="center">

<a href="http://cb.kingsoft.com/html/help/365.php" target="_blank">每日一句

</a>  <script language="javascript"  charset="gb2312"

src="http://bill.cb.kingsoft.com/ads/365.php?act=a"></script>  [引自金山词霸]

</div>

BLOG天气预报代码(转帖)

1、(转自:http://blog.coldpage.com/archives/2006/03/31/63.html)

天气预报代码

引用qq的~~

不过插在网页上还是不错滴

<IFRAME id=ifm2 align=left marginWidth=0 marginHeight=0 src="http://weather.qq.com/inc/ss292.htm" frameBorder=0 width=189 scrolling=no height=190></IFRAME>

此日志的引用地址

GB2312 http://blog.coldpage.com/trackback.php?id=63&encode=gb2312

UTF-8 http://blog.coldpage.com/trackback.php?id=63&encode=utf-8

2、(转自:http://www.joyepp.com/p/WeatherForecast.php)

blog美化-天气预报

6-20-2005-10:53 Mon  [歪人歪语]

     今天在招商银行的网站发现一个天气预报功能不错,顺手拿来做blog美化,为blog添加天气预报功能。

    功能演示地址: http://www.cmbchina.com/cmb2005web/cmbaspxbin/information/CmbWeatherForecast.aspx

    优点:

    1、招商银行的天气预报功能,除非地址失效,可访问性有保证

    2、稳定、加载速度快

    3、多城市、多天数快速查询

    默认的城市是北京,应该可以更改成其他城市或者不显示其他城市天气预报,不过似乎没有那个必要。

    使用方法:

    以clean模板的css定义为例,在index.htm文件中,新建两个标签,div class= side 和 div class=sidetitle

    在side标签中写“天气预报”

    作为标题 在sidetitle标签中插入一下代码:(<)iframe id="MainWeatherForecast" name="showWnd" marginWidth="0" marginHeight="0" src="http://www.cmbchina.com/cmb2005web/cmbaspxbin/information/CmbWeatherForecast.aspx" frameBorder="no" width="185" scrolling="no" height="147" style="WIDTH: 185px"></iframe>

     注意:为了本篇日志能正常显示,代码最前面iframe前被迫加了(),请删除<前后的()

Font Size: Large Middle Small

 PERMALLINK http://www.joyepp.com/p/WeatherForecast.php

 TRACKBACK http://www.joyepp.com/tb.php?tb_id=1119236020

(原文有点文字上的错误,作了点变动)

在linux的基础上重新安装windows2000不会覆盖启动菜单

  原来的经验,在win98和win2000的双系统中重新安装win98会覆盖win2000的多重启动菜单。但是在win2000和redhat linux9.0的双系统中重新安装win2000却不会覆盖原来的启动菜单。

  系统状态如下:

  两块硬盘A和B.

  原先:在A上有WIN98的启动分区(C盘)和WIN2000系统,在B上有WIN98系统。

  启动菜单为:

  WINDOWS98

  WINDOWS2000 PROFESSIONAL

  后来:在A上删除了win2000系统,换成了redhat linux9.0,由安装系统自动分的区(包括了3个分区:/boot,/,swap分区)

  启动菜单为:

  RED HAT LINUX 9.0

  DOS

 

  选择DOS,直接进入WIN98

  再后来:

  前几天因硬盘故障,格式化了B,启动分区仍是A上的(C盘),在B上安装了WIN2000.

  安装完成后,启动菜单为:

  RED HAT LINUX 9.0

  DOS

 

  选择:DOS

  菜单为:

  WINDOWS 2000 professional

  WINDOWS 98

  (当然,WINDOWS 98的菜单是不起作用的)

  也就是说,重新安装的WIN2000的启动菜单不会覆盖掉LINUX的GREP引导菜单,搞不懂了。

对于孩子的现状,真不知道怎么办了

  1、听说幼儿园的老师好像对我们有偏见,我们的孩子太倔强了,老婆说两次到学校都发现孩子在“受罚”,这是怎么了?

  2、在幼儿园吃饭到底对孩子好不好,孩子吃得怎么样?

  3、早晚都不想吃饭,晚上要咳嗽,前一段时间给她吃了几副中药也没有用,倒是咳得不很厉害,昨天晚上给她穿得很少和盖得很少,晚上给她吃得清淡和少,好像睡得还安稳些,也许晚上睡不安稳跟她晚饭有关。她婆婆认为孩子在幼儿园吃不好,晚上常给她吃肉类,盐分也许还有点重。这些是孩子睡不安稳的因素吗?

  我也是咳了近一个月的嗽了,吃了几副西、中药不管用,干脆不吃药了,自己今天买了一瓶“川贝枇杷膏”,情绪也非常低落,内心充满迷茫。

  一切都好像失控了,困惑中...