svn服务器搭建

一直觉得svn服务比较神秘,又哪儿听到说可以加在apache上面,于是感觉又不是那么遥远的难,于是简单的百度了两天,然后尝试搞了一下,还算可以,留个记录吧,方便以后的查找。
这是官方的http://wiki.centos.org/HowTos/Subversion
yum install mod_dav_svn subversion 为httpd安装必须的插件,发现yum报错,首先定位下python的版本,果然发现服务器好几个版本的,于是修改/usr/bin/yum把第一行的改为最新的版本#!/usr/bin/python2.4即可。

工作小结-infobright

首先记录几个常用命令

mysql文本数据导出

mysql -uroot -pgameroot game_stat -e "select * from game_log_201104 into outfile '/data/mysql/game_log_201104.csv' FIELDS TERMINATED BY ',' ESCAPED BY '\' LINES TERMINATED BY 'n';"

infobright数据导入,有关infobright数据仓库的更多知识,可以参考 MySQL Infobright-数据仓库笔记Infobright的数据类型以及优化相关 这两篇文章。

/usr/bin/mysql-ib -D game_stat --skip-column-names -e LOAD DATA INFILE  "/data1/webgame2/data/game_log_201012.csv" INTO TABLE game_log FIELDS TERMINATED BY  "," ESCAPED BY "\" LINES TERMINATED BY "n"

第一次写脚本的时候,把”和’号的顺序弄反了,结果“”转义符不能被正确的解释,需要注意的是,在linux中反斜杠一般用作转义字符,或称逃脱字符,linux如果echo要让转义字符发生作用,就要使用-e选项,且转义字符要使用双引号,比如 echo -e “n” 。
顺便记录下,linux中其他的几个引号的处理。
shell可以识别4种不同类型的引字符号: 单引号字符’ 双引号字符” 反斜杠字符 反引号字符`
1. 单引号 ( ‘ ‘ )

howard@0[script]$ grep Susan phonebook
Susan Goldberg  403-212-4921
Susan Topple    212-234-2343

如果我们想查找的是Susan Goldberg,不能直接使用grep Susan Goldberg phonebook命令,grep会把Goldberg和phonebook当作需要搜索的文件

howard@0[script]$ grep 'Susan Gold' phonebook
Susan Goldberg  403-212-4921

当shell碰到第一个单引号时,它忽略掉其后直到右引号的所有特殊字符
2. 双引号 ( ” ” )
双引号作用与单引号类似,区别在于它没有那么严格。单引号告诉shell忽略所有特殊字符,而双引号只要求忽略大多数,具体说,括在双引号中的三种特殊字符不被忽略:$,,` ,即双引号会解释字符串的特别意思,而单引号直接使用字符串.如果使用双引号将字符串赋给变量并反馈它,实际上与直接反馈变量并无差别。如果要查询包含空格的字符串,经常会用到双引号。

howard@0[script]$ x=*
howard@0[script]$ echo $x
hello.sh menus.sh misc.sh phonebook tshift.sh
howard@0[script]$ echo '$x'
$x
howard@0[script]$ echo "$x"
*

这个例子可以看出无引号、单引号和双引号之间的区别。在最后一种情况中,双引号告诉shell在引号内照样进行变量名替换,所以shell把$x替换为*,因为双引号中不做文件名替换,所以就把*作为要显示的值传递给echo。
对于第一种情况需要进一步说明,shell在给变量赋值时不进行文件名替换(这从第三种情况中也能看出来),各步骤发生的精确次序如下:
shell扫描命令行,把x的值设为星号*;
shell再次扫描命令行,碰到星号*,把它替换成当前目录下的文件清单;
shell启动执行echo命令,把文件清单作为参数传递给echo.
这个赋值的先后次序非常重要:shell先作变量替换,然后作文件名替换,最后把这行处理为参数
3. 反引号(“)
命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置。shell中有两种方法作命令替换:把shell命令用反引号或者$(…)结构括起来,其中,$(…)格式受到POSIX标准支持,也利于嵌套。

howard@0[script]$ echo The date and time is `date`
The date and time is 三 6月 15 06:10:35 CST 2005
howard@0[script]$ echo Your current working directory is $(pwd)
Your current working directory is /home/howard/script

杂记一篇,就当一周总结吧

好久没有记录东西了,生活还算是比较丰富多彩的吧,刚刚过去的周末,貌似热伤风了,大热天闷汗,然后昏昏沉沉地睡了大半天。上午陪老婆去医院,检查结果一切正常,很欣慰。北新妇的检验单,居然换成新设备了,还能自助打印,体验了一把,还挺好玩的。老婆最近有抽筋的迹象了,只好让医生开了点钙片和维生素混合着吃吧。希望老婆能一直这么开心吧,不容易。
周六和老婆断断续续开始看潜伏,老婆喜欢啥我就陪着看,这是义不容辞的责任,嘿嘿。下午包饺子,包了好多好多,韭菜鸡蛋和猪肉茄子的,累的也够呛,最后就不想动了,锅碗瓢勺还是第二天才洗刷的,哈哈。接下来开始寻摸着做些能补充钙吸收的饭菜了。

3D肉蒲团高清普通话版种子

有需要的还是跟帖留email吧,大家都懂得,嘿嘿。

偷得浮生半日闲

公司停电,百无聊赖地度过了一上午,吃完午饭还是没有来电的迹象,然后一帮人商量之后就做“如鸟兽散”了,屋子里没空调,闷得要命,基本上就各回各家各找各妈了。没想到午后的地铁依然跟早晚高峰一样,人山人海的,地铁站跟笼屉一般,汗水横流,好在基本上地铁里面还有点冷气,多少换回点舒服的感觉。
心里默念着,给老婆做点好吃,然后短暂合计之后,下地铁直奔菜市场。先来两条活鲫鱼,晚上就是保留菜–清炖鲫鱼汤了,然后选购了几个土豆和丝瓜,醋溜土豆丝和鸡蛋虾皮丝瓜汤,都是比较合老婆的口味的,回到家马不停蹄地先把鱼收拾好了,拿葱姜蒜料酒盐淀粉把鱼腌上,半个小时后开始。这段间隙里准备了土豆丝和丝瓜汤的配料,然后开始,在老婆进家门的一刻,正好开饭,还算比较准确,赢得老婆的一顿赞赏,心里还是挺美的。看来,厨师还得继续努力了,不能让老婆饿肚子。
google的pr有更新,总算恢复到2了,日志还得继续努力写下去,争取学习工作两不误。

飞快的周末

记录下流水账
周六一大早,陪老婆参加考试,横跨大半个北京城,考试历时4个小时,希望老婆能顺利通过吧,挺着大肚子还在复习看书,很是不易,我的关心还不多,还老是念叨,只能跟着着急了,不过真考不过也没啥,有些事情经历过了实际上就有收获了。考完吃完饭已经是快2点,然后直奔动物园,协助老婆买几件衣服,人还是一如既往的多,还差点被贴条,幸亏发现的比较及时。
周日美美的睡觉到自然醒,例行是打扫屋子清理卫生,下午去八里桥批发市场,所幸车比较少,估计是下午的原因吧,买了不少便宜的瓜果,差不多能吃一个星期了,然后直奔主题,买花。还真便宜不少,不用大老远地跑去莱太花卉了,看看最后的战果-3盆金边吊兰,据说吸收装修污染杠杠的,谁知道呢;2盆小绿萝;然后是一大盆绿萝,1.5米高的,放在沙发旁边,再就是零碎买的查花瓶里面的了。
开始看英语书,感觉压力好大,绷紧神经冲刺依稀吧。

Java读取自定义环境变量的方法System.getProperty和System.getenv

问题的由来,想在测试机环境下搞测试,然后不想修改搞到线上环境的时候,自动把本地测试的代码去掉,第一反应的是使用ip判断,但是某些时候也许没有request参数,那么我们变通一下,只需要在测试环境上搞一个自定义的环境变量,然后用来作为判断条件即可。
假设设置了环境变量MYNAME, 值为”this is my name”, 运行如下代码:

System.out.println("using getenv: "+ System.getenv("MYNAME"));
System.out.println("using getProperty: "+ System.getProperty("MYNAME"));

结果分别为:
using getenv: this is my name
using getProperty: null

另试了如下代码:

java.util.Properties p = System.getProperties();
java.util.Enumeration keys = p.keys();
while( keys.hasMoreElements() )
{
     System.out.println( keys.nextElement());
 }

结果根本没有MYNAME 这个变量!
那么怎么解决呢,需要明白这一点 System.getProperty(“MYNAME”) 只有当你运行 java -DMYNAME=JACK MyClass,这样好办了,我们只需修改服务容器比如resin的启动脚本 加上一个 -D自定义参数 即可。

早睡早起,调整作息

开始调整作息时间,坚持每天7点半左右到八点出门,这样能在9点和9点半之间到公司,然后回家就能提前半个小时,然后就有充足的时间做晚饭和吃饭,遛弯的时间了。要坚持住,正好部门也不是太忙,加班已经是好久之前的事情了,哈哈。好在LP对我的厨艺还比较赞可,持续自己做菜。

去地铁的路上,一辆车上咕噜滚下来好几个土豆,就是太难拿了,要不然晚上可以吃酸辣土豆丝了。

D7000+16/85+35/1.8

本周末是繁忙的一周末,周六一大早,进村帮老婆弟弟配电脑,从毕业后就落脚在朝阳区和通州了,很少再去海淀区,主要原因还是远,照例在smth寻好了价格,然后直奔目的地,各个卖场的导购们一如既往的热情,有点不自在,配完机器顺路把3年前买的老T61拿去做了下清理灰尘,温度下降了3度,很是可以的,夏天来了,笔记本也开始烫起来了。

周日按计划去马连道卓美买单反,念叨了好久了,不过自从小日本地震后,价格不降反升了,有点小郁闷,最后拿了D7000机身,还有两个镜头,35/1.8G主要负责室内人像,16/85的就当室外的挂机头了,新手入门,基本上不懂,一顿瞎捣鼓,没啥问题就撤退了,花掉2个月的工资,接下来好好练习拍照了,嘿嘿。还得努力赚钱。

6.8生活小记录

京通快速自从划了快速路专用道之后,果然慢的跟shit一样了,难怪有那么多的人选择走朝阳路和朝阳北路了,结果今天居然还小小的追尾了一下,走保险吧,要不一年的保费又白交了,4~5千的保费修个一两次应该还是可以的吧,就是今天那男的比较极品,还唧唧歪歪的让我陪误工费和油费,亏说的出来,去4S店不过几公里的路程,反正比较少见,还是个新手,开了半年不到。

商量给家里装个新风系统,这样子既能避免开窗外面噪音的侵袭,又能减少室内装修甲醛的污染,考证了下不用管道的效果不明显,用管道的估计样子会比较丑吧,现在装修已经弄完了,包管道又是一个问题。需要合理地设计一下才成。