让del.icio.us不影响页面的加载(转帖)

金山词霸有时加载太慢,在网上收索到这个解决的方法。感谢原作者。

让del.icio.us不影响页面的加载(转自:http://blog.osxcn.com/delicious-loading.html)

Published 1 month, 2 weeks ago in WordPress, CSS. Tags: del.icio.us | del.icio.us

del.icio.us linkrolls

del.icio.us提供的linkrolls服务是个好东西,可以把它放在自己的Blog上、网站上,显示你所收藏的美味书签,很多朋友都这样做了。但是由于加载速度的问题让人头痛,所以很多朋友也不得不把它放在页面的最后,来换取速度带来的损失。我在Wordpress上用过Del.icio.us Integrator插件建立一个del.icio.us页面,来解决加载慢的问题,还是不理想。

如果按照我blog的页面布局来说,放在最后就得放在footer的前面,不然,右边的蓝色背景就会受到影响。那么在页面上的显示结果很是不爽,于是我想了一个老办法,使用一小段JS代码来完成这个任务。

道理很简单,就是先在需要放置linkrolls的地方插一个替代图片,等页面加载完成后隐藏图片显示真正的linkrolls代码。这样就可以把那段真正的linkrolls代码放在页面的最后,而不影响页面其他元素的加载。具体怎么实现?看看下面的实际做法就知道了。

1、把下面这段js代码放在之间,放页面其他地方也可以。

<script type="text/javascript">

 

   function delicious() {

 

       document.getElementById("delicious_loading").style.display = 'none';

       document.getElementById("delicious_loaded").style.display = 'none';

       document.getElementById("delicious_show").innerHTML=document.getElementById("delicious_loaded").innerHTML;

       document.getElementById("delicious_show").style.display = 'block';      

   };

 

   window.onload = delicious;

 

</script>

2、把下面这段代码放在你需要显示linkrolls的地方。

(如果你想好看,可以把下面的loading…改成一个GIF动画什么的都可以)

<div id="delicious_loading">loading...</div>

<div id="delicious_show" style="display:none;"></div>

3、把下面这段代码放在页面的最后,例如:/html之前或之后,反正它不会显示出来。

<div id="delicious_loaded" style="display:none">你自己的linkrolls调用代码</div>

完成。效果见本Blog首页右边的“Recent Delicious”。

当然,你也可以把豆瓣收藏秀、Flickr badge、Google的广告或推介,反正一切影响你页面加载的代码都这样弄。如果你有兴趣还可以按照这个思路弄一些WP的插件。

BTW:上面的代码加亮效果使用andot的CoolCode插件

提升JSP应用程序的7大绝招(转帖)

提升JSP应用程序的7大绝招(转自:http://www.weste.net/2005/1-10/15174728409.html)

作者:陶国强 罗小虎 发布时间:2005-1-10 15:17:47 | 【字体:大 中 小】

枪战系列

    你时常被客户抱怨JSP页面响应速度很慢吗?你想过当客户访问次数剧增时,你的WEB应用能承受日益增加的访问量吗?本文讲述了调整JSP和servlet的一些非常实用的方法,它可使你的servlet和JSP页面响应更快,扩展性更强。而且在用户数增加的情况下,系统负载会呈现出平滑上长的趋势。在本文中,我将通过一些实际例子和配置方法使得你的应用程序的性能有出人意料的提升。其中,某些调优技术是在你的编程工作中实现的。而另一些技术是与应用服务器的配置相关的。在本文中,我们将详细地描述怎样通过调整servlet和JSP页面,来提高你的应用程序的总体性能。在阅读本文之前,假设你有基本的servlet和JSP的知识。

  方法1:在servlet的init()方法中缓存数据

  当应用服务器初始化servlet实例之后,为客户端请求提供服务之前,它会调用这个servlet的init()方法。在一个servlet的生命周期中,init()方法只会被调用一次。通过在init()方法中缓存一些静态的数据或完成一些只需要执行一次的、耗时的操作,就可大大地提高系统性能。

  例如,通过在init()方法中建立一个JDBC连接池是一个最佳例子,假设我们是用jdbc2.0的DataSource接口来取得数据库连接,在通常的情况下,我们需要通过JNDI来取得具体的数据源。我们可以想象在一个具体的应用中,如果每次SQL请求都要执行一次JNDI查询的话,那系统性能将会急剧下降。解决方法是如下代码,它通过缓存DataSource,使得下一次SQL调用时仍然可以继续利用它:

public class ControllerServlet extends HttpServlet

{

 private javax.sql.DataSource testDS = null;

 public void init(ServletConfig config) throws ServletException

 {

  super.init(config);

  Context ctx = null;

  try

  {

   ctx = new InitialContext();

   testDS = (javax.sql.DataSource)ctx.lookup("jdbc/testDS");

  }

  catch(NamingException ne)

  {

   ne.printStackTrace();

  }

  catch(Exception e)

  {

   e.printStackTrace();

  }

 }

 public javax.sql.DataSource getTestDS()

 {

  return testDS;

 }

 ...

 ...

}

  方法 2:禁止servlet和JSP 自动重载(auto-reloading)

  Servlet/JSP提供了一个实用的技术,即自动重载技术,它为开发人员提供了一个好的开发环境,当你改变servlet和JSP页面后而不必重启应用服务器。然而,这种技术在产品运行阶段对系统的资源是一个极大的损耗,因为它会给JSP引擎的类装载器(classloader)带来极大的负担。因此关闭自动重载功能对系统性能的提升是一个极大的帮助。

  方法 3: 不要滥用HttpSession

  在很多应用中,我们的程序需要保持客户端的状态,以便页面之间可以相互联系。但不幸的是由于HTTP具有天生无状态性,从而无法保存客户端的状态。因此一般的应用服务器都提供了session来保存客户的状态。在JSP应用服务器中,是通过HttpSession对像来实现session的功能的,但在方便的同时,它也给系统带来了不小的负担。因为每当你获得或更新session时,系统者要对它进行费时的序列化操作。你可以通过对HttpSession的以下几种处理方式来提升系统的性能:

   如果没有必要,就应该关闭JSP页面中对HttpSession的缺省设置: 如果你没有明确指定的话,每个JSP页面都会缺省地创建一个HttpSession。如果你的JSP中不需要使用session的话,那可以通过如下的JSP页面指示符来禁止它:

<%@ page session="false"%>

   不要在HttpSession中存放大的数据对像:如果你在HttpSession中存放大的数据对像的话,每当对它进行读写时,应用服务器都将对其进行序列化,从而增加了系统的额外负担。你在HttpSession中存放的数据对像越大,那系统的性能就下降得越快。

  当你不需要HttpSession时,尽快地释放它:当你不再需要session时,你可以通过调用HttpSession.invalidate()方法来释放它。

  尽量将session的超时时间设得短一点:在JSP应用服务器中,有一个缺省的session的超时时间。当客户在这个时间之后没有进行任何操作的话,系统会将相关的session自动从内存中释放。超时时间设得越大,系统的性能就会越低,因此最好的方法就是尽量使得它的值保持在一个较低的水平。

[resin]resin 配置与使用(转帖)

[resin]resin 配置与使用(转自:http://blogger.org.cn/blog/more.asp?name=mjm0928&id=13262)

心得体会

mjm0928 发表于 2006-4-7 12:56:07

 1. <http host='localhost' port='80'/>

   host参数指定的是服务器,port指定的是http端口,默认是localhost和8080。

2. <srun host='localhost' port='6802'/> 这个是jsp和java Servlet的引擎配置。

3. 使用Resin开发Java Web项目时,需要建立自己的WebApp。

4. Resin中的应用可以有2种方式发布:

       一是在Resin的目录下发布;

       二是打包成War发布。

5. 在resin.conf中查找<web-app>标签,该标签表示一个web应用

     标签中,id属性表示该应用的Web路径。如<web-app id='/test'>,表示该应用在Web上访问的时候应该用http://hostname/test/来访问。app-dir属性表示该应用的实际路径。如<app-dir>d:\resin\doc\test</app-dir>表示该应用在d:\resin\doc\test目录下面。默认值为根下面的和id同名的目录。Resin可以配置3种error-page:404错误也就是文件找不到错误页;Exception违例页;不能连接java引擎页。他们分别可以这样子设置。

 

    404文件找不到页

    <web-app id='/app1'>

     <error-page error-code='404' location='/file_not_found.jsp'/>

    </web-app>

 

    Exception 违例页

    <web-app id='/foo'>

     <error-page exception-type='java.lang.NullPointerException' location='/nullpointer.jsp'/>

    </web-app>

 

    不能连接到srun Servlet引擎错误页

 

    该页设置和应用无关,属于服务器的设置。

    <http-server>

     <error-page exception-type='connection' location='/missing_file.html'/>

    </http-server>

 

    参见下面的语句:

 

    <classpath id='WEB-INF/classes' source='WEB-INF/src' compile='true'/>

 

    id参数的值表示classpath中编译后的class的存放路径;

      source参数的值表示classpath中java源代码的存放路径;

      compile中的值可能是true或者false,表示是否由Resin的srun自动编译java源代码。

      Classpath的设置一般和javaBean或者Servlet的使用有关。id的值表示javaBean的编译好的包存放的根,source的值表示javaBean的java源代码存放的根。Servlet相同。

6.  Servlet的设置

      <servlet-mapping url-pattern='*.xtp' servlet-name='xtp'/>

    <servlet-mapping url-pattern='*.jsp' servlet-name='jsp'/>

    <servlet-mapping url-pattern='/servlet/*' servlet-name='invoker'/>

    一般就是指定那些需要通过srun的解析。比如在这里,把*.jsp改成*.jss,其他不变,那么只要在访问时遇到*.jss的文件就和原来遇到*.jsp一样处理。通过这个可以指定解析的引擎,如以下的配置:

    <servlet-mapping url-pattern='*.xtp' servlet-name='com.caucho.jsp.XtpServlet'/>

    在Servlet中,也可以指定servlet。如

    <servlet servlet-name='hello' servlet-class='test.HelloWorld'/>

    <servlet-mapping url-pattern='/hello.html' servlet-name='hello'/>

    在servlet-mapping中有个重要的参数case-sensitive 如果在windows上,最好配置成false,忽略大小写,从而和windows的约定一致。

7.  Session的配置

      <session-config>

    <session-max>4096</session-max>

    <session-timeout>30</session-timeout>

    <enable-cookies>true</enable-cookies>

    <enable-url-rewriting>true</enable-url-rewriting>

    <file-store>WEB-INF/sessions</file-store>

    </session-config>

 

    session-max :最大 session数量

    session-timeout :session过期时间,以分钟为单位。

    是否允许cookie :指session是否采用cookies。如果采用cookies,浏览器必须支持session才能使用,发布时建议改成false。enable-url-rewriting和enable-cookies一般配合使用。如果enable-cookies是false,

    enable-url-rewriting应该设成true比较合适。

    file-store :该配置指示服务器是否把session作为文件存放在服务器上。如果把该项注释掉,则在你的web-app目录下的WEB-Inf/sessions目录不保存序列化后的session对象。Session还有jdbc-store配置,对应着把session通过jdbc永久保存在数据库中。其实也就是会话变量的序列化后的保存和重新载入的物理实现。

 

   

    

关于tomcat服务器优化,常遇到的一些简单问题的解决方法(

关于tomcat服务器优化,常遇到的一些简单问题的解决方法 (z)(转自:http://www.21tx.com/dev/2005/01/14/14647.html)

http://dev.21tx.com 2005年01月14日 Blog bon_jovi

每日文章精萃

.Net:解析Visual Basic.NET事件编程 Java:结合Direct Web Remoting使用AJAX

ASP:如何在 dataGrid 上的第一列加上 Che PHP:嵌入式Web视频点播系统实现方法

JSP:在Windows NT 4.0上安装Apache+Servl CGI:Perl程序设计中常用的函数之二

VB:在VB 中调用动态连接库 VC:目录文件查找包装类

配置tomcat的时候,我想禁掉目录列表的访问。结果通过google的搜索找到了一篇不错的文章。除了我想要的,还有一些其他有用的东西。

出处:你的博客网(yourblog.org)

做JSP时,关于tomcat服务器优化,常遇到的一些简单问题的解决方法:

1.如何禁止访问目录列表:

修改tomcat x.x/conf/Web.XML内的一个属性值,就是把true 改为 false

在web.xml里找到以下代码 

<Servlet>

        <servlet-name>default</servlet-name>

        <servlet-class>

          org.apache.catalina.servlets.DefaultServlet

        </servlet-class>

        <init-param>

            <param-name>debug</param-name>

            <param-value>0</param-value>

        </init-param>

        <init-param>

            <param-name>listings</param-name>

            <param-value>true</param-value>

        </init-param>

        <load-on-startup>1</load-on-startup>

    </servlet>

把其中的<init-param>

            <param-name>listings</param-name>

            <param-value>true</param-value>

        </init-param>

改为 <init-param>

            <param-name>listings</param-name>

            <param-value>false</param-value>

     </init-param>

2.如果某文件资源没有找到,服务器要报404错误,

  如果执行的某个JSP文件产生 NullPointException

  会显示一些不想异常提示代码,

  为了让用户看到更更友好的页面

  可在自己的虚拟目录的WEB-INF/web.xml中作如下的设置

<error-page>

  <error-code>404</error-code>

  <location>/notFileFound.jsp</location>

</error-page>

<error-page>

  <exception-type>Java.lang.NullPointerException</exception-type>

  <location>/null.jsp</location>

</error-page>

  同理,你也可以设置抛出其它异常时应该显示的页面!

  另外在jsp页面最上方加上这样一句话,

<%@ page isErrorPage="true" errorPage="error.jsp"%>

    也可以捕捉NullPointerException这种异常,此时转向error.jsp

3.设置session的超时时间 (单位:分钟)

<session-config>

   <session-timeout>30</session-timeout>

</session-config>

4.设置默认欢迎页面(当不输入文件名,只输入目录时起作用)

<welcome-file-list>

   <welcome-file>index.jsp</welcome-file>

   <welcome-file>index.html</welcome-file>

   <welcome-file>index.htm</welcome-file>

</welcome-file-list>

------------------------

配置好的web.xml文件如下:

------------------------

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app

    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

    "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

   <display-name>Tomcat Examples</display-name>

    <description>

      Tomcat Example servlets and JSP pages.

   </description>

<!--

会话超时的设置

设置session 的过期时间,单位是分钟;

-->

<session-config>

<session-timeout>10</session-timeout>

</session-config>

<!-- -->

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

<welcome-file>index.html</welcome-file>

<welcome-file>index.htm</welcome-file>

</welcome-file-list>

<error-page>

<error-code>404</error-code>

<location>/notFileFound.jsp</location>

</error-page>

<error-page>

<error-code>500</error-code>

<location>/common/500.jsp</location>

</error-page>

<!-- 可以对特定的Exception 捕获 -->

<error-page>

<exception-type>java.lang.NullPointerException</exception-type>

<location>/null.jsp</location> </error-page>

<!--

如果某文件资源没有找到,服务器要报404错误,按上述配置则会调用notFileFound.jsp。

如果执行的某个JSP文件产生NullPointException ,则会调用null.jsp

-->

<!--

下面的写法是错误的,少一个 /

<error-page>

<error-code>404</error-code>

<location>filenotfound.jsp</location>

</error-page>

-->

</web-app>

BSD版权翻译(转)

下面就是我们使用的BSD版权内容:(转自:http://www.postgresql.org/docs/faqs.FAQ_chinese.html)

部分版权(c)1996-2005,PostgreSQL 全球开发小组,部分版权(c)1994-1996 加州大学董事

(Portions copyright (c) 1996-2005, PostgreSQL Global Development Group Portions Copyright (c) 1994-6 Regents of the University of California)

允许为任何目的使用,拷贝,修改和分发这个软件和它的文档而不收取任何费用, 并且无须签署因此而产生的证明,前提是上面的版权声明和本段以及下面两段文字出现在所有拷贝中。

(Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies.)

在任何情况下,加州大学都不承担因使用此软件及其文档而导致的对任何当事人的直接的, 间接的,特殊的,附加的或者相伴而生的损坏,包括利益损失的责任,即使加州大学已经建议了这些损失的可能性时也是如此。

(IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.)

加州大学明确放弃任何保证,包括但不局限于某一特定用途的商业和利益的隐含保证。 这里提供的这份软件是基于“当作是”的基础的,因而加州大学没有责任提供维护,支持,更新,增强或者修改的服务。

(THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.)

linux常用的文件重定向命令(转帖)

 默认  常用的文件重定向命令(转自:http://www.gd-linux.org/bbs/showthread.php?t=324)

command > filename      把标准输出重定向到一个新文件中

command >> filename      把标准输出重定向到一个文件中(追加)

command 1 > fielname      把标准输出重定向到一个文件中

command > filename 2>&1    把标准输出和标准错误一起重定向到一个文件中

command 2 > filename     把标准错误重定向到一个文件中

command 2 >> filename     把标准输出重定向到一个文件中(追加)

command >> filename 2>&1   把标准输出和标准错误一起重定向到一个文件中(追加)

command < filename >filename2   把command命令以filename文件作为标准输入,以filename2文件作为标准输出

command < filename    把command命令以filename文件作为标准输入

command << delimiter   把从标准输入中读入,直至遇到delimiter分界符

command <&m    把文件描述符m作为标准输入

command >&m    把标准输出重定向到文件描述符m中

command <&-    把关闭标准输入

关于man命令的转帖2篇

在Linux下自我学习获得各类需要的知识(http://www.linuxdiyf.com/viewarticle.php?id=4056)

作者: 恒善喜   发布日期: 2005-12-04    查看数: 324    出自: http://www.linuxdiyf.com

 

转贴:

安装好了Unix/Linux类操作系统,却不知道拿它做点什么、也不知道它能做些什么……这是大多数初这朋友的疑惑。

我认为首先要做的是学会如何在Unix/Linux下获得知识,掌握学习方法。如何真有一天你要用Linux来做点什么时觉得孤立无助,你一定要学会用man命令。

man是什么?

首先在命令行输入man man回车看一下吧。把NAME和DESCRIPTION那两段英文看完了你就明白了。man是显示Unix/Linux的在线手册的命令。

典型情况下,man是用来查看一些命令、函数或文件的帮助手册的,另外它还可以显示一些gzip压缩格式的文件。

Unix/Linux的在线手册是什么?

一般情况下Linux下所有资源都会随操作系统一起发行,包括内核源代码。而在线手册是操作系统所有资源的一本很好的使用手册。你有不懂的命令时可以man一下这个命令,写程序时有不会用的函数时可以man一下该函数,甚至你不懂某个文件时都可以man一下这个文件(当然,这个文件一般来说是系统用到的一个配置文件或某个系统服务用到的配置文件)。

man手册资源的位置

一般情况下man的资源主要位于/usr/share/man目录下面。但如果你仔细看了man man的结果,并且对man.config也感兴趣并且man man.config过后,你就会明白其位置是由MANPATH变量决定的,你可以more /etc/man.config来看有哪些地方有man内容的位置。

单个man资源内容的组成

一般来说,man内容会分为NAME、SYNOPSIS、DESCRIPTION、OPTIONS、SEE ALSO、BUGS等部分。NAME是该内容的一个简单说明(一般是一句话给个定义似的);SYNOPSIS是大致说明,对于命令来说是命令的语法,对于函数来说是函数的定义;DESCRIPTION是该内容的一个简明介绍,让你对你查的内容大致有个印象;OPTIONS是在查询命令时的命令参数的详细解释;SEE ALSO是给你一些提示,相当于介绍你一些参考内容;BUGS是指明该命令或函数存在什么BUG,提醒你防止出现。

man资源的组成

有很多朋友说man资源分为8章,我觉得这只是说了主要部分,你ls /usr/share/man看一下就知道了,有man1、man2……man7、man8这样8个目录存在呢,但除了这之外还有其它的目录啊,何况还有其它的MANPATH规定的目录呢。所以具体多少章不是固定的,但Linux下大致相同内容的会归在同一个目录下,比如man1和man2目录所在的大致是一些系统命令,而man3是编程时的一些函数的用法,man5是些配置文件手册所在的目录……同样在/usr/X11R*/man目录下也有一些目录。具体是按什么来分目录的呢?各人具体根据各目录的内容理解不同了。

man资源的使用技巧

1、如果你在MANPATH变量所设定的目录(比如/usr/share/man/man1目录)里看到一个ln.1.gz的文件,那么你就可以man ln来查看fileame到底是个什么命令了。

2、man的一般用法是man SECTION name,即在指定的章节(SECTION)里查看name命令或函数的用法。但如果你不知道某个命令或函数在哪一章,你可以man -a name这样在所有MANPATH设定的地方查看name的手册。默认情况下man是显示完第一个手册页后就会退出,如果有-a参数就会搜索所有的资源了。

3、如果你觉得在Linux下看太困难或者你英文不太好想要借助“XX词霸”或“XX快译”来帮忙,那么你可以先把man手册存成文本文件然后ftp或samba共享到windows下打开来看吧。使用这么个命令就行了:

man man | col -bfp > man.txt

把man手册生成了一个man.txt文件了,借助翻译工具来看吧

4、编写自己的man资源,如果你自己写了一个非常好的函数或命令加到系统了,比如你写了一个MyDate命令来显示你需要的格式日期,那你也可以为你的MyDate命令来写个手册。很简单,你编辑(用vi或其它任何文本编辑工具都可以)一个MyDate文件,里面是你的命令使用方法说明,然后用gzip MyDate命令把这手册压缩一下生成一个MyDate.gz,然后把这个文件copy到某个MANPATH指定的目录,比如cp MyDate.gz /usr/share/man/man2,以后你就可以man MyDate来查看你的命令使用方法了。

5、安装好一个Linux操作系统后能做什么呢?你要学系统管理?就把/usr/share/man1和/usr/share/man2目录里的所有命令都man一下吧,都掌握了你绝对是系统管理专家了!想要学C编程?man一下gcc、g++、gdb等命令。或者你ls一下各个bin目录,比如/usr/bin、/bin、/sbin等,然后依次man一下你所看到的吧。

学习Linux最大的资源在你电脑上,如果你没安装,在你的光盘上一定有。想要学内核吗?赶快去看看/usr/src/linux*目录下面的所有东西吧。

 

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

 

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

××××××××××××××××××××××××××××××××××××××××××××××

(转自:http://www.linuxforum.net/books/smth/Unix.AIX/00000006/00000014.htm)

BBS水木清华站∶精华区

发信人: NightOwl (Owlet), 信区: Unix       

标  题:  Man Pages的一些秘密 (转载)

发信站: BBS 水木清华站 (Tue Apr 18 02:44:43 2000)

 

【 以下文字转载自 Linux 讨论区 】

【 原文由 NightOwl 所发表 】

发信人: NightOwl (Demon&Daemon), 信区: Linux

标  题:  Man Pages的一些秘密

发信站: 紫 丁 香 (Mon Apr 17 13:52:30 2000), 转信

 

                            Man Pages的一些秘密

                                   --version1.0

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

                                       NightOwl

                                      2000.4.16

                            NightOwl2000@263.net

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

       这个题目也不知道过不过时。最近刚好看到又一本书上提了一下Unix下Man的格

     式和用法,然后根据"man man"的结果和平时在BBS上看到的大虾高招,就自己总结

     了一下。希望能对那些和我以前一样对Man Pages不大明白的朋友有些启发。;-)

 

       Unix/Linux里最好的说明和帮助文档我认为就是那些在线帮助Manual Pages了,

     很多时候,碰到不大明白的命令或者是一些函数的用法的时候,我就会开个man来看

     看究竟。不过以前没有细究Man Pages里的名堂,现在才算是略知一二.下面就把我所

     知的写下来,请各位补充未完尽或错误之处。(如有建议和意见,烦用EMail告知我一

     声,谢谢!)

 

        1。Unix/Linux下Man Pages的节(section)的含义说明:

 

        Header       : 标题;

        NAME         : 对你所Man的命令/函数的功能概述;

        SYNOPSIS     : 对你所Man的命令/函数用法的简单描述;

        AVAILABILITY : 可用性说明;

        DESCRIPTION  : 对你所Man的命令/函数的详细描述;

        OPTIONS      : 该命令的所有可选项的详细说明;

        RETURN VALUE : 如果是函数,则列出函数返回值;

        ERRORS       : 如果函数调用出错.则列出所有出错的值和可能引起错误的

                       原因;

        FILES        : 该命令/函数所用到的相关系统文件;

        ENVIRONMENT  : 和该命令/函数相关的环境变量;

        NOTES        : 表示不常用的用法或者是实现的细节;

        BUGS         : 已知的错误和警告(可能附有解决办法);

        HISTORY      : 该命令/函数的历史发展;

        SEE ALSO     : 可以参照的其他的相关命令/函数

        Others....   : 和一些具体命名/函数有关的特殊节

                       比如在"man"自身的Man Pages里就有一个"CAT PAGES"节用来

 

                       描述如何保存Man Pages当前的格式.

 

    举例如下:(请在你的系统中试验以获得感性了解;-)

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    $man apropos

    apropos(1)                                             apropos(1)

    NAME

       apropos - search the whatis database for strings

    SYNOPSIS

       apropos keyword ...

    DESCRIPTION

       apropos  searches a set of database files containing short

       descriptions of system commands for keywords and  displays

       the result on the standard output.

    SEE ALSO

       whatis(1), man(1).

                           Jan 15, 1991

     废话:上面大写的词就是那些"节(section)"了.

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

 

    2.Unix/Linux下的Man Pages的分类:

 

     你想要通过man来得到在线帮助的主题可能会在Unix/Linux里扮演很多角色。比如

    "write"既是一个命令同时它又是一个系统调用。那么怎么样才能得到你想要得到的�

    个角色的帮助呢?原来,在Unix/Linux里,Man Pages已经按功能分好了8个类别了,

    如下表所示:

 

        ------------------------------

       | 类:   |           内容:    |

        ------------------------------

       | 1 :    | 用户命令            |

       | 2 :   | 系统调用            |

       | 3 :   | C库函数             |

       | 4 :    | 设备与网络的接口    |

       | 5 :    | 文件格式            |

       | 6 :    | 游戏和演示          |

       | 7 :    | 环境、表、Troff宏   |

       | 8 :    | 系统维护            |

        ------------------------------

     <注:本表摘自本文末所注明的参考资料一>

 

       在Unix/Linux里,可以用"man n command/fuction"来得到相关的功能说明;这

   里"n"表示你所得到的功能的类号,比如,你想得到"write"作为命令时的man page,

   就用"man 1 write"这个格式,如果你想得到的是"write"作为系统调用的man page时�

   就要用"man 2 write"了。

 

        将结果对比如下:

         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

         WRITE(1)     Linux Programmer's Manual   WRITE(1)

         NAME                                           ↑

         write - send a message to another user ← 看看这里

         SYNOPSIS

         write user [ttyname]

        ++++++++++++++++++++++++++++++++++++++++++++++++++

         WRITE(2)     Linux Programmer's Manual   WRITE(2)

         NAME                                           ↑

         write - write to a file descriptor   ← 再看看这里

         SYNOPSIS

         #include <unistd.h>

         ssize_t write(int fd, const void *buf, size_t count);

         %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

 

     3. 和Man有关的部分常用环境变量

 

        (与Man有关的环境变量可以在/etc/man.confl里设置,也可以通过命令行参数来

     设置.)

 

     MANPATH   : 如果设置了该变量,则表示man根据MANPATH指定的路径来搜索

                 man pages;

     MANSECT   : 如果设置了该变量,则表示指定要搜索那些节(section);

     MANWIDTH  : 如果设置了该变量,则表示显示的宽度;

     MANPAGER  : 该变量是用来设置显示man page的程序.如果没有设该变量,则用

                 PAGER变量的值,如果PAGER变量也没有定义,则用默认的"/usr/bin/

                 less -is"程序来显示;

 

    4.和Man Pages有关的一些技巧

 

      Question1.如何把man显示在屏幕的内容输出到文件里以便打印出来?

      Answer1 :大家可能都试过"man n foo >foo.txt"了,也发现了用编辑器看fo.txt

  时会有很多的"N^HNA^HAM^HME^HE"之类的符号,这样的结果当然不能让人满意.那么怎

  么做呢?下面的方法来自哈工大的baggio大虾:

      "man n foo | col -b > foo.txt"。

     这样一来,输出的结果就是你希望的了。原来,man为了能按照它的显示规则显示文

  本的内容,在文本里加了一些控制字符。而col命令刚好可以用来消除控制字符的。通

  过管道把man出来的结果送到col里处理一下就可以去掉那些讨厌的控制字符了。是不是

  很方便?(感谢baggio的高招!;-)

      Question2.怎么样才能知道某个主体有几种类别呢?

      Answer2 : 这个问题也得靠一个和man相关的命令来解决--"whatis",比如你可

  以用"whatis bar" 来得到bar的所有类别。"whatis bar"可以显示与bar有关的所有

  的man page的名称和类别号。你快试试看。;-)

      Question3....(我就知道这么多,其他的等你来补充;-)

      Answer3....

 

    5.后话:

 

      本来还想把man的命令行参数也写出来,想想好像用的人的不是很多就罢了(因为

    我不用)关于man的详细的介绍当然要看man的man pages了.我想通过上面的简单的描

    述 ,你应该可以很顺手的用man来看"man"的manual page了.(呵呵,一大堆"man"),我

    就不废话了.;-).

 

      另外,  如果你有别的有关于man的操作技巧,拜托请你告诉我呀.

 

   6.参考资料:

 

   (1).  <<Pratical Unix Programming, A Guide to Concurrency,Communication,

           and Mutilthreading>> Kay A. Robbins & Steven Robbins

         中译本:<<实用Unix编程>>  机械工业出版社1999.10第一版

 

   (2).  Manual Pages' "Man" page ,ie. "man man" 😉

--

�       @@@@           @@@@

     @@@@@ @@   N   @@ @@@@@         得失随缘

   \ @@@@ @ @@  i  @@ @ @@@@ /       心无增减

      @@@  @@   g   @@  @@@

        @@@     h     @@@

      \         t         /

 

 

--

※ 来源:·BBS 水木清华站 smth.org·[FROM: 202.118.179.51]

BBS水木清华站∶精华区

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