三脚猫功夫

tokyotyrant的一些相关

一、在使用tokyotyrant的时候,有时候会使用table,使用table时候如果使用到查询功能时候,使用索引能够提高查询速度,故会给tokyotyrant的table建立索引,建立索引一般用到下面的命令:

1、字符串类型的字段进行索引:

tctmgr setindex -it lexical 数据库文件名 “索引字段”

e.g. tctmgr setindex -it lexical database.tct “UserName”

2、数值类型的字段进行索引:

tctmgr setindex -it decimal 数据库文件名 “索引字段”

e.g. tctmgr setindex -it decimal database.tct “UserId”

一些比较常用的linux命令

rar&unrar

在windows下的压缩文件一般是rar,在ubuntu(10.04版本试过,其他版本没有试过)可以压缩和解压,如果没有安装的话,可以使用sudo apt-get install unrar和sudo apt-get install rar,解压的命令为unrar e filename.rar,压缩命令为rar a filename.rar filename/dir,至于这e和a参数代表什么意思:

a          Add files to archive

e          Extract files to current directory

rename

某天需要批量修改文件名,使用mv,发现不支持,上网找了一下,找到一个命令rename,rename支持一般字符串替换,也支持正则表达式。

字符串替换用法:rename replaced replace filenamelist;例如,把当前目录下所有后缀为txt的文件包含有”named”的字样改为”name”, rename named name *.txt

正则表达式用法:raneme ‘s/regexxed/regex/’ filenamelist ,如果想引用正则表达式中的变量,使用”$” + 数字,$1表示第一个括号表示的变量,比如把当前的目录下的*.txt文件都在前面加上rename-的字样,则可以这样写:’s/(.*)\.txt$/rename-$1.txt/’ *.txt。按照一般正则表达式的用法$0应该是表示当前整个正则表达式表示的字符串,可是我使用了rename ‘s/.*\.txt/rename-$0/’ *.txt报错,假设我目录下有一个名字为my.txt会报下面的错误,“Can’t rename my.txt rename/usr/bin/rename: 没有那个文件或目录”,现在还搞不明白!

题外话,在使用过程中发现文件如果以中划线开头“-”命名,使用任何命令,无论直接使用文件名还是使用”\filename”(如”\-my.txt”),都会报错,后来使用“./filename”(如”./-my.txt”)才没有报错!