2012一月12

在ruby使用ssh连接linux服务器

需要安装ssh的gem

使用ssh接口访问linux服务器
[ruby]
require ‘net/ssh’

host = hostip
username = username
password = pwd

##显示文件和系统版本
server_cmd1 = ‘ls -l’
server_cmd2 = ‘cat /etc/issue’

# 连接到远程主机 foobar
ssh = Net::SSH.start(host, username, :password => password) do |ssh|
result = ssh.ex[......]

Read more

2011十二月27

Ruby 解析 HTML (Nokogiri)

很多时候我们需要爬取网页并且获取页面上的特定内容,不一定是做坏事比如爬取竞争对手的数据。也许我想定期爬自己的网站,找到页面上的链接,并且看它们指向的网页是不是都还可以访问。爬到一个网页,为了获得上面所有的链接,我以前首先想到的是用正则表达式。但是 HTML 并不一定是良构的 XML (如果每个人都用 XML 的标准写 HTML,那我们直接用标准的 XML parser 就好了),写正则表达式的时候你需要考虑大小写、换行、单引号/双引号/没有引号、某些地方的空格,太头疼了。

更好的办法当然是像在浏览器中使用 JavaScript 一样,在 DOM 树上找东西。我比较习惯用 jQuery,通[......]

Read more

2011十月31

TextMate 快捷键收集&教程

⌘T: Go To File,这个每天要用到N次
Esc: 自动补全
⌃W: 选中当前word
还有默认的类似Emacs的光标移动,不过这些是Mac自己的快捷键

For Rails:
⌘R: Run
⌃|: …
⌥⌘⇧↓ : Go to…
⌃⇧H:生成partial template
ctrl + ⌘ +上下键:移动整行
ctrl + shift + K: 删除整行
ctrl + shift +D:复制整行
ctrl + shift + T :看看类里面的方法列表

2011十月25

centos挂载ntfs(转)

摘自http://runforever.blog.163.com/blog/static/13993931620101115617150/

Linux下想访问NTFS分区,现在普遍的方法是利用ntfs-3g或者内核模块来实现。

一、安装ntfs-3g模块

1. 使用yum的安装方法:

请确定你已经安装了rpmforge软件库的源。请参考:RHEL/CentOS 5.5使用第三方软件库

然后安装下列组件。

yum install fuse ntfs-3g -y

注:如果你在使用 CentOS 5.3 或更旧版本,那么你需要安装来自 ELRepo 的 km[......]

Read more

2011十月20

mac下vim插件taglist的一个小问题

我在mac下的vim配置和在公司里用的centos是一套,刚迁到mac下时打开文件经常报这样一个错误:

Taglist: Failed to generate tags for /my/path/to/file
ctags: illegal option — -^@usage: ctags [-BFadtuwvx] [-f tagsfile] file …

之前一直没在意,仔细一看是报ctags的错误,只有taglist用到了ctags,所以肯定是taglist的问题了.然后就在talglist的faq上找到了答案,原来taglist只支持exuberant ctags tool,[......]

Read more

2011十月10

[转载]我从乔布斯身上学到的12节课

编者按:前苹果首席步道师Guy Kawasaki和乔布斯共事多年,他分享了从乔布斯身上学到的12节课。很靠谱。

一、专家其实是“砖”家。

各种专家(记者、分析师、顾问、银行家等)都不“做”事,所以他们“提建议”。他们能告诉你产品问题出在哪里,但他们做不出更好的产品。他们能告诉你如何销售产品,但他们自己却卖不出去。他们能告诉你如何打造牛逼的团队,但他们只管理自己的秘书。比如专家曾在80年代告诉我们Mac有两大缺点,不支持菊轮式打印机驱动和Lotus 1-2-3;还有专家建议苹果收购康柏。专家的话是要听,但别唯专家马首是瞻。

二、顾客不知道自己想要什么。

苹果市场调研是个悖[......]

Read more

2011十月9

用notepad++ 打造编码神器

今天早上是十一过后第一个上班,早上为了不能很快的进入工作状态,弄了弄编辑器,最近对vim和notepad++编辑器感兴趣,基本上我WIN32平台上就用notepad++,liunx && 和mac os我就用VIM编辑器。

今天对notepad++编辑几个插件的安装,打造一个小巧轻便的神器;
开始了!
notepad++ 是一款很优秀的轻量级编辑器,为大多数程序员所喜爱。那我来让你的notepad++用起来更加爽。
notepad++有丰富的插件,我比较喜欢以下4个,light explorer ,quicktext ,functionlist和zen coding。
大部分插件[......]

Read more

2011九月20

完美转换MySQL的字符集 Mysql 数据的导入导出【字符集】

MySQL从4.1版本开始才提出字符集的概念,所以对于MySQL4.0及其以下的版本,他们的字符集都是Latin1的,所以有时候需要对mysql的字符集进行一下转换,MySQL版本的升级、降级,特别是升级MySQL的版本,为了不让程序继续沿用Latin1字符集之后对以后Discuz!版本升级的影响和安装SupeSite,这就需要我们进行字符集的转换!
本人转换过好多数据了,也用过了好多的办法,个人感觉最好用的就是使用MySQL命令导出导入中将字符集转换过去!
现在我将用图文并茂的方式向大家展示一下如何将MySQL字符集进行转换,由于字符集比较多,现在主要举GBK和Latin1这两种字符集之[......]

Read more

2011九月17

在Terminal下设置高亮显示

近来装了一个干净的系统纯粹是为了干活需要。发现terminal 下没有 syntax highlighting, 所以需要设置一下。写在这里一则为了给记忆作个备份,二则也许有朋友恰好需要知道这一点,所以将设置方法写在下面。

方法一:
—————
在 ~/.bash_profile 里添加如下语句 (如果 ~/.bash_profile 没有则创建一个)
export CLICOLOR=cons25
—————

方法二:
————–
同样在 ~/.bash_profile 里添加
alias ls=’ls -G[......]

Read more

2011九月13

Firefox高版本 Flash debug 版本异常引起崩溃

Firefox升级到最新以后,调试Flash的时候,只要有异常,弹出异常窗口以后,Firefox 就不响应了,过一会会显示Flash插件崩溃的信息,只能通过任务管理器强行关闭Firefox。

1、 Firefox 地址栏输入about:config,打开高级设置,如果有警告直接忽略
2、 在Filter里搜索dom.ipc.plugins
3、 双击dom.ipc.plugins.enabled.npswf32.dll设为false【如果没有新建一个】
4、 也可以把dom.ipc.plugins.timeoutSecs设为-1来禁用插件崩溃的timeout
5、 重启 Fire[......]

Read more

2011九月7

nohup & python不能够马上看到输出

python的输出又缓冲,导致out.log并不能够马上看到输出。

-u参数,使得python不启用缓冲。

所以改正命令:nohup python -u test.py > out.log &

2011九月4

用SVN的钩子实现SVN与WEB测试服务器同步

多人开始使用subversion之后,就想着,要建立一个测试用的服务器,不需要把文件update到本地再进行测试。
原理:基于subversion的钩子,即hook(在每个版本库下有hooks文件夹,里面有很多钩子程序)。在subversion执行一个操作时,那会相应的首先去调用相关的钩子程序(如果存在的话)。那么实现一个同步的测试服务器,我们只需要在一个用户执行完毕一个commit操作之后,让钩子程序去自动更新测试服务器的文件即可。通过这个思路,我们需要作的就是建立一个post-commit的钩子。

钩子文件在你的svn版本库hooks目录下,即存放subversion版本数据的文件[......]

Read more