Linux Screen 分屏持续执行进程神器

Linux下的一个神器啊。Screen,可以分屏使用,还可以随时让好多事,后台持续运行!

ubuntu下安装很方便 apt-get install screen

screen #进入screen命令

ctrl+a :这个是标准的screen下命令的开头然后附加一下键

d :detach分离当前窗口,让他后台执行

S :分屏操作

c :分屏后新建一个会话

k : 关闭当前窗口

n : 进入下一个窗口

w : 列出窗口列表

screen绝对是日常运维必备神器。完全可以替代nohup命令作为后台运行常用工具

此去经年,是谁许我一纸繁华

胡适的《此去经年,是谁许我一纸繁华》是本不错的书。内容很好,不过有点文章杂揉的一个合集。内容有回忆录,杂文,游记,演讲等内容。其中回忆录最为精彩。以前看过胡适的《胡说》这本诗集,感觉他的诗歌不是很好。只有一首《希望》被谱曲歌唱改为歌曲,比较脍炙人口。

从此去经年是谁许我一纸繁华中可以看到胡适的成长历程。他的出身很不错,家庭有些不太如人意,父亲是一个当时的官吏,他母亲是第三任太太,比它母亲大近30岁。他出生后不久父亲去世。此后他由她母亲带大,经历不少困苦。情节很感人,完全体现出了中国古代母亲的伟大。

通过次数完全可以体会到胡适的文学大师的风范,文字间充满成熟和睿智。有篇讲中国近代文学改革,以及他自己创办文学社。以及去美国留学,他所接触的中西文化的分析,他对于自由与民主的发展历程的认识很是让人信服。

很不错的一本书,我才看了50%,到游记部分感觉不是很好玩。期间他每到一地就做演讲,很让人佩服。可见当时他已经明扬国内,还有他和溥仪皇帝那段故事,有大师风范,有文人的傲骨。以后有机会要多读读他的作品。

windows7 64位 php5.3安装php_mongo.dll方法

windows 7 64位系统安装php mongodb 模块时需要选择64位的dll才能正确使用目前最新支持的是php_mongo-1.3.2RC1-5.3-vc9-x86_64.dll 这个dll,我的php是TS模式的。试了几次都没成功最后用最新版的1.3.2RC1的就成功了。

dll的下载地址为:https://github.com/mongodb/mongo-php-driver/downloads 支持php5.2,php5.3,php5.4三个版本的。 最新版本是1.3.2RC1

玩的开心!!!

JavaScript 秘籍系列(1)异步

经过一年多的参悟,哥明白了一些JavaScript的秘密。这里分享下,JavaScript是一个披着c语言皮的lisp语言,和ruby一样灵活。他有很多诡秘的特性,这里先介绍的就是他的异步特性。

异步,JavaScript是一个事件驱动的语言。怎么理解呢,他是一个事件队列,在不停的等待触发。有事件来了,相应的代码就会执行。这点很不像c语言和php这类过程式语言和Java、c++这类面向对象的语言。

首先说一个示例。

var a = 123;

(function() {
a = 124;
})();

alert(a);

这段代码会怎么执行呢?第一行代码会赋值123给a ,接着 匿名函数会直接赋值124给a,然后输出 a的值124;

如果使用异步的调用就不会是这样了

function bark (callback) {
 
 
 setTimeout(function(){
 a++;
 callback("aa"+ a);
 },0);
}

var cb = function(msg) { console.log(msg);}

var a = 123;
bark(cb);
a ++;
var mg = 'bb'+ a;
cb(mg);

这段代码就会异步执行,先输出bb开头的,然后输出aa开头的代码。这种操作一般都是用来将一些事件先执行了,耗时的事情稍后让他自己慢慢执行。

异步的方式还有很多:

1,事件驱动,on事件,omit触发事件。

2,就是setTimeout和setInterval驱动的异步执行策略。

剩下的就是在这两个基础上组合实现的设计模式的实现了。

Vim ctags 代码跟踪

VIm下使用借助ctags跟踪c,php代码特别方便。如果是ubuntu可以使用命令安装:

sudo apt-get install ctags

安装完成后就可以通过

ctags -r -o taglist_file src_dir 简历tags文件。

接着在vim里就可以使用ctrl + ']' 去跟踪代码, 通过ctrl+t 返回跳转前的代码位置。基本这样就可以很好的使用Vim跟踪代码了。

 

Mysql 忘记root密码怎么办?

Mysql 忘记root密码怎么办? 在服务器shell首先关闭mysql服务。

service mysql stop

然后使用非授权模式打开mysql服务器,

bin/safe_mysqld --skip-grant-tables & 

mysql    -u root
> use mysql
> update user set password=password("new_pass") where user="root";  
> exit;

退出mysql,然后重启mysql服务

servie mysql restart

这时就可以用新的密码登录mysql了

PHPTidy 纠错html代码

html抓取的时候经常会出现html代码错乱问题,怎么修复呢?这就需要PHPtidy这个利器了。一般php会默认带的。
具体用法就不多说了。直接贴代码:

/**
* 清理html并纠错
*/
function tidyHtml($html) {
$b = mb_detect_encoding($html);
if($b != 'UTF-8'){
$html = mb_convert_encoding($html, 'UTF-8');
}
$tidy = new tidy;
$tidy->parseString($html,array(),'UTF8');

$tidy->cleanRepair();
$txt = $tidy->html()->value;

preg_match_all('/\(.*)\<\/body\>/msi',$txt,$ret);
$ret = $ret[1][0];
// $ret = strip_tags($ret,'