摘要: 1 attachment=`(echo '"name","rbdomain","ridomain","impressions","spend"';echo -n "$report") | uuencode topDomainReport_$yesterdayDate.csv`2 echo -e "Subject: Top Domain Report - $yesterdayDate\nTo: $email_address\nCc: $QAlist\n 阅读全文
posted @ 2014-01-24 10:28 linehrr-freedom 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 我们可以经常看见在系统etc/init.d里面的script都有run-level这种说法,比如: 1 #! /bin/sh 2 3 ### BEGIN INIT INFO 4 # Provides: sshd 5 # Required-Start: $remote_fs $syslog 6 # Required-Stop: $remote_fs $syslog 7 # Default-Start: 2 3 4 5 8 # Default-Stop: 9 # Short-Description: OpenBSD Secure Shell server1... 阅读全文
posted @ 2013-10-04 11:51 linehrr-freedom 阅读(375) 评论(2) 推荐(0) 编辑
摘要: 推荐一个不错的terminal监测进程使用网络情况的工具:nethogs在很多的Linux distro基本的repo中都是有的~ 阅读全文
posted @ 2013-09-24 14:12 linehrr-freedom 阅读(298) 评论(2) 推荐(0) 编辑
摘要: 其实这里就是用到了vim里面的map功能.其实实现非常的简单, 就是在vim里面的select mode里面加上一个map我的习惯是使用c+m两个快捷键注释代码:看看vim的设置吧::set vmap cm :s/\(.*\)/#\1/:noh完成!当你在vim里面使用Shift+v选择好一块代码以后,按下c,再按下m键就可以看见选择的代码已经全部在前面加上了#,也就是Perl里面的注释标记你也可以将以上命令里面的#改成你自己语言的注释标记,同样适用哦~最后记得如果喜欢可以将这个加入到你的vimrc里面哦~ 阅读全文
posted @ 2013-09-14 16:44 linehrr-freedom 阅读(347) 评论(11) 推荐(0) 编辑
摘要: 我们知道Linux做虚拟内存交换的空间叫做swap空间.我们也知道,如果swap划分太小了,RAM用完了swap也用完了系统就可以崩溃了.所以我们在swap用完之前有什么可以快速解救的办法没有呢?当然是有的!方法1: 从其他的分区划分空间添加到swap分区我们可以使用fdisk命令轻易的将其他的分区空间加入到swap空间中,但是注意,添加之前我们必须使用swapoff命令将现有的swap分区off以后,重新合并老的swap分区和追加的分区,之后再使用swapon将swap激活. 具体的使用方法大家可以查阅swapoff/swapon的使用手册,非常简单的而且要注意的是,我们swapon以后,因 阅读全文
posted @ 2013-09-11 11:53 linehrr-freedom 阅读(692) 评论(0) 推荐(0) 编辑
摘要: 其实很多人都知道hadoop自带一个hadoop balancer的功能,作用于让各个datanode之间的数据平衡.比如说node-A有100GB数据,占用磁盘99%空间;而node-B只有10GB数据占用磁盘10%空间~那么当我们以hdfs身份运行hadoop balance的时候,hadoop将会平衡这两个node之间的数据.至于多少叫做平衡,hadoop的default是10%的threshold, 但是我们可以在命令里面指定一个门限~比如:sh $HADOOP_HOME/bin/start-balancer.sh –t 15%具体的用法可以参照: http://www.cnblogs 阅读全文
posted @ 2013-09-10 11:43 linehrr-freedom 阅读(1418) 评论(0) 推荐(0) 编辑
摘要: 关于使用端口复用我们已经很熟悉了,但是有一些细节是未必大家都知道的。最近在网上看见大家对端口复用的一些争论,现在来总结一下,如有错误请大家指出:1 int setsockopt(int sockfd, int level, int optname,2 const void *optval, socklen_t optlen);上面这个函数大家都很熟悉的,在其中我们可以用setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt));使得这个监听的端口变成可以复用的。那么复用真正是什么... 阅读全文
posted @ 2013-09-09 09:18 linehrr-freedom 阅读(2868) 评论(0) 推荐(0) 编辑
摘要: In Hive, we can create tables which has the MAP structure inside, like:1 create table test (2 item MAP3 );and sometimes we want to iterate all the items inside the MAP as key-value pairs.Hive offered such function called explode():explode() takes in an array as an input and outputs the elements ... 阅读全文
posted @ 2013-09-09 01:59 linehrr-freedom 阅读(24414) 评论(0) 推荐(0) 编辑
摘要: Hive数据库设计技巧 阅读全文
posted @ 2013-09-09 01:52 linehrr-freedom 阅读(1119) 评论(0) 推荐(0) 编辑