作者归档:xicl

原来png图片比jpg要大很多倍

今天准备把网站图片缩略图全部改成png的,本来以为png图片会小很多。结果转换完以后傻眼了。原来2.1GB的图片,转换后变2.5GB了,整整多了400MB。这次算是失败了,重新转回来吧

使用linux find命令:

find . -name original.jpg   |awk '{b= $1; sub(".jpg",".png") ;print "convert " b " -resize 3000x220 " $1}'  | bash

png图片格式的特点如下:

公认的最适合网页使用的图片格式,优点是能像gif一样透明还能像jpg一样保留更多的颜色,并且效果要比jpg好,而且它可以渐变透明,不像gif要透明就100%透了,这种格式的缺点是透明不兼容ie浏览器,不过有方法弥补,另外一点是体积稍微有点大。

所以,以后除非是涉及logo相关的图片,上传的图片还是jpg的比较省空间!

分屏后台运行神器tmux

使用screen命令有个问题就是当打开的窗口多的时候会出现screen进程占用cpu资源过多,分屏的环境没法保存的问题。当分屏之后再进入当前会话,分屏会分成几个窗口使用命令切换,无法在一个屏幕展示。

有了tmux就不会有这个问题了。tmux命令键和screen基本一致。screen是用ctrl+a前置键。tmux使用 ctrl+b前置命令键。

使用方法:

tmux #进入tmux环境
tmux ls #显示已经打开的tmux列表

ctrl+b: 命令前置键与下面命令配合
d : 离开当前会话,回到普通终端模式,还能再回来哟
n : 切换到下一个窗口,多窗口模式
c : 新建一个窗口
p : 切换到上一个窗口
" :垂直分屏这个很好玩
% :水平分屏
o : 小窗口间切换
方向键: 小窗口按方向键切换
x :关闭当前小窗口
!:关闭所有小窗口
w :选择当前打开的窗口列表可以通过上下键切换

最后我要说用了tmux,screen就弱爆了 。tmux占用的资源特别少。很稳定还,分屏效果更是爽歪歪

玩的开心;

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跟踪代码了。