自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 堆排序

http://smallwildpig.iteye.com/blog/1687290

2014-11-04 17:03:29 113

原创 shell处理文件的方法(不用文件描述符)

readline (){   >$OUTFILE   while read line; do       echo $line >> $OUTFILE   done < $INFILE}

2014-04-08 14:00:44 182

原创 用shell删除字符串的前后空格

str="  hello  world  "echo ${str} | awk 'gsub(/^ *| *$/,"")' /^ *| *$/ 正则表达式匹配 以空格开始 或以 空格结尾。 最后的输出是: hello world

2013-11-26 17:38:57 1000

原创 给某个目录下面的文件改名

下面的代码展示了如何将某个目录下面的所有文件的后缀名改成需要的后缀名。 首先从$BABY_CAMERA_TEMP_DIR中找到后缀名为JPG和MP4的所有文件名,然后逐个处理,如果是JPG文件,则把后缀名改成jpg,同时在原来的文件名前面加上MODIFY的日期(20121213,2012年12月13号修改),如果是MP4文件,则只在原来的文件名前面加上MODIFY的日期  find...

2012-03-27 14:59:09 212

原创 用expect自动ssh到远端机器执行命令

先说一下autoexpect,安装这个之后在命令行运行autoexpect -f xxscript.exp test.sh (加入test.sh是一个需要和用户交互的脚本),接下来按照提示输入,执行完成test.sh之后,打开xxscript.exp,运行xxscript.exp,可以不用交互直接执行test.sh。 有两个expect脚本可以解决自动到远端执行命令。 1。auto...

2012-03-17 14:23:20 286

原创 typeset的用法

typeset的用法,用-开启各个选项,用+关闭选项。 -L Left justify and remove blank spaces-R Right justify and to fill with leading blanks-Zn Right justify to n length and fill with leading zeros if the first     ...

2012-02-23 17:57:23 546

原创 使用sed删除行首空格,tab

sed 's/^[ \t]*//g' filesed 's/^ *//g' file

2012-02-19 20:32:49 652

原创 使用文件描述符进行输入,输出重定向

先看输入重定向,假设我们使用文件描述符3进行输入重定向: 1)把文件描述符3和标准输入stdin(文件描述符为0)关联起来,执行下面的命令之后,所有键盘和鼠标的输入都被重定向到文件描述符3     exec 3<&0 2) 把标准输入stdin重定向到文件,执行下面的命令后,所有的输入都会从$INFILE中读取     exec 0< $INFILE...

2012-02-18 20:57:57 252

原创 shell中的数组

shell中支持数组,下面来看一下如何定义和使用它 1)使用set -A 命令 (bash不支持,ksh支持) set -A MY_ARRAY item1 item2 item3 2)一次加载一项 X=0for item in item1 item2 item3; do    MY_ARRAY[$X]=$item    ((X = X + 1))do...

2012-02-15 11:45:11 112

原创 shell中测试一个变量是否为空

来看下面的例子,注意双引号是必不可少的。 VAR= if [[ -z "$VAR" && "$VAR" = ''  ]]; then    echo "var is null"fi 

2012-02-15 10:34:29 147

原创 shell中删除一个文件中的空行/重复行

首先看如何删除空行,用sed命令最简单 sed /^$/d file 或者 cat file | sed /^$/d 注:^$是一个正则表达式,匹配空行 再来看如何删除重复行,用uniq uniq file uniq_file (file是有重复行的文件,uniq_file是没有重复行的文件)...

2012-02-15 10:25:27 652

原创 用sed在一个文件的每一行开头或者结尾添加内容

例如,a.txt文件的内容如下: test1test2 用sed -i s/$/hello/g a.txt可以在a.txt结尾添加hello字符串。a.txt结果如下: test1hellotest2hello 用sed -i s/^/hello/g a.txt可以在a.txt开头添加hello字符串。a.txt结果如下: hellotest1h...

2012-02-13 20:57:50 6348

原创 shell中如何产生随机数

例如,我们要产生1-100的随机数,如下脚本可以实现 RANDOM=$$ (用当前进程的PID初始化随机数的种子)UPLIMIT=100RANDOM_NUM=$(( $RANDOM % $UPLIMIT + 1)) echo "$RANDOM_NUM" ...

2012-02-13 20:51:40 447

原创 shell中如何取得字符串的长度

字符串用变量VAR表示,则VAR的长度就是${#VAR} 例如,VAR="hello",${#VAR}结果就是5

2012-02-13 20:46:29 95

原创 进度指示器

当执行一个比较费时的操作时,如果能在终端显示进度指示器,则对用户来说是比较有好的。 下面的代码展示了如何达到这种效果。函数rotate_line是一个死循环,会在终端每隔一秒交替显示不同的字符(-\|/)。主程序调用rotate_line,使其在后台执行,用$!获得其进程ID号;接下来调用比较费时的操作,这里简单模拟一下,sleep 30秒,当费时的操作执行完之后,就杀掉在后台...

2012-02-13 17:54:51 119

原创 shell中逐行处理文件

下面的代码展示了如何逐行处理文件 #!/bin/bashINFILE=$1OUTFILE=$2#empty out file>$OUTFILE#redirection in file at the bottomwhile read line; do    echo $line >> $OUTFILEdone < $INFILE...

2012-02-09 20:51:17 154

原创 shell中大小写转换

有两种方式: 1。用tr     例如:UPPERCASE=$(echo $VARIABLE | tr '[a-z]' '[A-Z]')   (把VARIABLE的小写转换成大写)            LOWERCASE=$(echo $VARIABLE | tr '[A-Z]' '[a-z]')   (把VARIABLE的大写转换成小写) 2。用typeset ...

2012-02-03 18:02:36 510

原创 用shell创建encryption key pairs(加密密钥对)

shell可以远端执行命令,用下面的脚本可以创建加密密钥对,这样不用每次执行命令的时候都输入密码。下面的脚本执行的前提条件是在远端机器上有~/.ssh这个目录。  #!/bin/bash# # SCRIPT: keyit_rsaUSER=$1RMT_HOST=$2FILE_PUBKEY=~/.ssh/id_rsa.pubif [[ ! -e "$FILE_PUB...

2012-01-24 18:04:39 643

原创 shell条件判断

一些条件判断 总结需要把判断条件放在[[]]里面,老的脚本用[],不过在[[]]里面可以用&& || 表示并且,或的关系。(())可以把大小比较的条件写在里面,例如 if ((a > b)) ,若是用[[]],则必须写成 if [[ a -gt b]] -b file            若文件存在且是一个块特殊文件,则为真-c file  ...

2012-01-24 17:16:18 72

原创 学习vi系列(1)-全文替换

可以把文件中的某个字符串替换成新的字符串,也可以加上正则表达式,把需要替换的行进行替换。 格式1:                         :s/old/new  (把当前行第一次出现的old字符串替换成new字符串)                 :s/old/new/g (把当前行出现的所有old字符串替换陈gnew字符串)                 :%s...

2012-01-19 18:42:18 172

原创 python中使用optparse模块简化命令行编写的复杂度

python中的optparse模块用来编写命令行工具非常实用,下面通过一个例子来阐述一下。 ----------------------------person.py 模块: -n/--name | the person's name-a/--age | the person's age-j/--job | the psrson's job ---------...

2011-10-28 15:03:22 195

如何卸载db2数据库

卸载数据库时,经常会出现各种各样的警告,下面我们来看看通常的警告都如何处理。 假定db2的安装目录是 $db2_install 1. 停掉数据库服务,db2stop2.  进入$db2_install/install 目录,运行./db2_deinstall -a命令。3.  如果提示 “the deinstallation process cannot continue ...

2011-07-20 15:15:25 885

原创 Curl用法点滴

CURL-命令行浏览器Curl非常强大,完全可以作为一个REST CLIENT端的工具来使用,而且非常方便快捷。 1. Post 方法1.1 如果在REST 服务器一端,定义了一个addAccount方法,而且这个方法是通过Post方式发送的,服务器端以QueryParam方式接受参数。 @POST    public Response addAccoun...

2010-11-16 15:41:25 110

原创 shell 编程点滴

判断文件是否存在if [ -e filename ]  then echo 'file exists'fi

2010-06-02 11:17:09 83

原创 linux下如何挂载一个磁盘

   execut the following commands:   mkfs.ext3  /dev/sdb   mount /dev/sdb /mnt/db

2010-05-19 15:26:17 202

java中读取配置文件

为了降低代码的耦合性,很多时候,我们需要配置文件,比如数据库的连接,这样当数据库连接变化的时候,不用修改应用程序,也不用重新编译。在java中,提供了对property类型的文件的操作,可以很方便的读取属性值,比如下面的一个property文件: ##################################### Database Connectivity Properties...

2009-06-27 10:21:09 90

原创 JDBC连接数据库代码片段

下面的代码片段可以和MySQL数据库建立连接,并读取数据。类似的,可以很方便的连接DB2,Oracle,等,前提是把他们的Driver和classpath关联起来。 如果是DB2,则把driver改成 com.ibm.db2.jcc.DB2Driver,相应的驱动可以从安装DB2的文件夹SQLLIB\java中找到,db2jcc.jar,放在classpath路径下。 相应的,把url改成...

2009-04-29 19:54:17 93

括号匹配问题

下面的一段python代码是检查括号匹配问题。zip(brackets[::2], brackets[1::2])返回的是 (('(', ')'), ('[', ']'), ('{','}'))代码使用两个字典,count_left和right_for_left。 初始的时候 count_left = {'(' : 0 , '[' : 0, '{' : 0}  --- key是左边的括...

2009-04-16 10:22:48 48

使用python统计单词出现的个数

最近在看python脚本语言,脚本语言是一种解释性的语言,不需要编译,可以直接用,由解释器来负责解释。python语言很强大,而且写起来很简洁。下面的一个例子就是用python统计单词出现的个数。 import sysimport string#import collectionsif len(sys.argv) == 1 or sys.argv[1] in {"-h", ...

2009-04-13 10:10:04 3302

原创 servlet的生命周期

下图为servlet的生命周期 

2009-04-08 18:15:52 63

解压tar.gz文件

在本文中主要阐述如何用程序的方法解压tar.gz文件,tar是把文件打成一个包,并不压缩;.gz是用gzip把打成包的.tar文件压缩,所以成了一个.tar.gz的文件,这是linux下面常见的压缩文件格式。 在尝试了ZipFile之后,发现仅仅jdk里面提供的类及方法不足以解压tar.gz文件,于是用到了commons-compress-1.0.jar,它是apache提供的jar包,需要的...

2009-04-03 14:39:21 309

使用Spring降低类之间的耦合

在Spring入门的文章中提到了可以使用xml文件来对类的属性进行配置,从而不用修改源代码,而改变打招呼的方式。这在一定程度上体现了依赖注入的优越性,在本文中将讲述如何利用依赖注入特性来降低两个类之间的耦合,从而提高代码的质量。例子我们将沿用本博客中设计模式部分的策略模式Duck的例子,但是做了一些改动。 首先定义Duck接口:public interface Duck { public...

2009-04-03 10:43:52 428

原创 Spring入门

Spring 入门(一个简单的例子) lovevrc 转贴   更新:2004-12-28 13:19:37  版本: 1.0    首先我们要先取得Spring的相关档案,Spring的档案放在SourceForge上,网址是:http://so...

2009-04-02 16:00:15 39

Java使用点滴

1. 如何产生一定范围内的随机数字(0~Max之间的数字[0,max)) Random random = new Random();Math.abs(random.nextInt() % Max)];或者(int)(Math.random() * Max) 2. 如何将字节流转换成字符流 new BufferedReader(new InputStreamReader(...

2009-04-01 09:39:40 58

原创 如何使swt窗口居中显示

(1)下面代码可以使swt窗口相对于整个显示器居中shell.setLocation(Display.getCurrent().getClientArea().width / 2 - shell.getShell().getSize().x/2, Display.getCurrent() .getClientArea().height / 2 - shell....

2009-02-21 10:58:03 775

使用SAXParser处理xml文档

http://www.oracle.com/technology/oramag/oracle/03-sep/o53devxml.html 中阐述了如何有效的解析xml文档。 在本文中主要就如何用SAX解析xml文档进行说明。要解析的xml片段如下: ...

2009-02-20 10:16:02 154

原创 命令模式

【命令模式】把指定的动作封装在一个对象中,并为该对象提供一个已知的公共接口。这样一来,即使客户对即将执行的实际动作一无所知,也可以发出请求,而且客户程序不会受到动作改变的影响。...

2009-01-31 18:24:16 43

原创 单例模式

【单例模式】确保一个类只能有一个实例,并且提供一个全局访问点。通常单例模式有如下的形式:public class Singleton {private static Singleton instance;private Singleton(){}public static Singleton getInstance(){ if(instance == null){...

2009-01-27 18:38:59 58

原创 工厂模式

【工厂模式】 定义了创建对象的接口,由子类决定实例化具体的对象。工厂模式让一个类把实例化的工作延迟到子类进行。下面是一个具体的例子,用PizzaStore来展示了工厂模式的使用。从类图中我们可以看出,PizzaStore扮演着Creator的角色,Pizza扮演着Product的角色,这两个类都是抽象类。具体的Product定义在Pizza的子类中,由PizzaStore的子类决定如何创建...

2008-12-30 13:42:56 48

原创 观察者模式

【观察者模式】定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。观察者模式提供了一种对象设计,让主题和观察者之间松耦合。关于观察者的一切,主题只知道观察者实现了某个接口。主题不需要知道观察者的具体类是谁,做了些什么或其他任何细节。任何时候我们都可以增加新的观察者。因为主题唯一依赖的东西是一个实现Observer接口的对象列表,所以我们可以随时...

2008-12-29 09:57:13 72

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除