Ubuntu中mono环境的搭建

30 views 八月 14, 10 by Timothy

Mono的大名,搞.NET的同学都知道。它使.NET程序在Linux下有了跨平台运行的可能。随着mono的逐步发展,现在已经逐渐趋于稳定和流行了。此文介绍一下Ubuntu中mono环境的搭建。

1.安装

1
$ sudo apt-get install mono-gmcs libmono-system-data2.0-cil libmono-system-ldap2.0-cil libmono-system-messaging2.0-cil libmono-system-runtime2.0-cil

当然,还有其他的一些包可选,比如:

libmono-winforms2.0-cil 提供WinForm程序开发功能

libmono-system-web2.0-cil 提供asp.net web程序开发功能

libmono-system-web-mvc1.0-cil 提供MVC的web开发框架

libmono-wcf3.0-cil 提供WCF开发功能

libmono-nunit2.4-cil Nunit,单元测试模块

2.安装好后,查看mono相关信息

1
2
3
4
5
6
7
8
Mono JIT compiler version 2.4.4 (Debian 2.4.4~svn151842-1ubuntu4)
Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com
        TLS:           __thread
        GC:            Included Boehm (with typed GC)
        SIGSEGV:       altstack
        Notifications: epoll
        Architecture:  x86
        Disabled:      none

3.测试程序

?View Code CSHARP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
using System.Linq;
 
namespace Test
{
    class Program
    {
        static void Main()
        {
            Console.WriteLine("Hello Mono!");
            Console.ReadLine();
        }
    }
}

保存为test.cs,然后用gmcs编译,运行正常。

至此,mono环境配置成功。

推荐一个黑莓上的SSH客户端软件–BBSSH

71 views 八月 07, 10 by Timothy

记得我曾经写过一篇博文,叫做用BB管理你的VPS,其中介绍到的一款在黑莓上运行的SSH客户端,叫做MidpSSH。MidpSSH唯一不足的地方,就是连接后的命令输入方式,并不是直接在字符界面输入,而是要切换到另外一个文本界面,不方便,也不太直观。后来经过自己在网上的搜寻,发现一款更加不错的SSH客户端,叫做BBSSH,BBSSH还是个开源项目。BBSSH感觉比MidpSSH好用了许多。难怪,BBSSH自身的介绍里面,也说,自己是在原有的MidpSSH基础上做了更加多高级的修改。并且直接支持在shell界面键入命令,不必像MidpSSH那样,在切换的文本界面输入命令了,更加直观。

bbssh1bbssh2 目前BBSSH最新版本为1.1.80,我的机器上不是最新版的。官网地址为: http://bbssh.org/wiki/en/Home
官网还提供OTA下载,地址是:http://bbssh.org/ota/

WP自用插件: HTML Entities Converter

42 views 七月 25, 10 by Timothy

在用Wordpress写有程序代码的文章的同学,都有这样的体验,就是在文章中插入代码,并提交文章到wordpress的时候,wordpress会把代码中的一些符号进行转义,再存到数据库中。这种情况,多出现在WordPress后台编辑使用可视化编辑器的时候,或者使用Windows Live Writer的时候。这样,代码经过转换过后,就成了一团乱了,比如:

image

其中的大于号,引号,还有其他的一些符号,都被转换成了HTML实体符号。

对应的其他符号的转换关系,还有如下的一些:
image网上也有一些解决办法,比如在使用WP-CodeBox插件的时候,通过修改WP-CodeBox插件自身的代码,添加转换函数,进行一次转换。 或者在wordpress后台使用HTML编辑器,逐个进行修改,纯体力活。基于这样的情况,俺做了个实现自动转换HTML实体符号功能的插件,激活后,你就不必担心代码中的符号会被转换成HTML实体符号了,在你提交发布文章的时候,它会自动帮你把被转换成HTML实体符号的字符给转换回来……从此,你可以放心的在文章中插入代码,而不必担心代码被转换得一团乱了,hoho。 代码只有两三句,完全没啥技术含量,高手请忽略……

点击这里下载: HTML Entities Converter V1.0

上传到Wordpress的plugin目录,后台激活即可。

WP-Reader-Wall 插件兼容 WordPress 3.0的修改

44 views 七月 22, 10 by Timothy

wp-reader-wall是个有意思的插件,能在页面列出最近评论过的同学的头像。采用照片墙的方式,展示给用户,并且,头像的排序是根据评论的条数来排序的。
自从上次升级WordPress到3.0后,发现者插件没有正常工作了,索性禁用了此插件,也没时间仔细研究。今天特闲,所以决定拿这插件来研究研究。发现导致插件工作不正常的地方,是在插件的代码中定义select的sql语句,取读者数据的时候出了问题。把这句sql从插件中挖出来,在线上环境的mysql中执行了一下,果然取不到数据。刚开始,怀疑是sql语句的where条件的问题,后来逐个排除,没发现异常。最后,把重点放在了表名上,插件里面是用的一个全局变量:$tablecomments 来表示评论的表,索性直接替换成wp_comments试试,果然能取到数据了。看来$tablecomments在WordPress 3.0中失效了。去wordpress搜了一下,官方提到$tablecomments变量是不推崇的方式,可能已经被弃用。官方还建议了一些其他的全局变量的替代办法,如下:

image这样,我们可以遵循官方的建议,在WP-Reader-Wall插件的select语句中,用$wpdb->comments替代原来的$tablecomments,这样,插件就能正常在WordPress 3.0下使用了。总结了一下,关于WordPress升级遇到的一些问题,可以直接查阅官方文档,还有就是参考每个版本之间的变化,包括变量定义,以及数据库改动。这才是最好,最直接的办法。

具体修改方法,在WP-Reader-Wall.php中,找到如下的代码:

1
	$request = "SELECT count(comment_ID) comment_nums,comment_author, comment_author_email,comment_author_url FROM $tablecomments  where comment_date》'".$cur_time_span."' AND comment_type='' AND comment_approved=1 group by comment_author_email order by count(comment_ID) DESC ";

修改为:

1
2
3
$request = "SELECT count(comment_ID) comment_nums,comment_author, comment_author_email,comment_author_url FROM ".$wpdb->comments.
" where comment_date>'".$cur_time_span."' AND comment_type='' AND comment_approved=1 group by comment_author_email order by count(comment
_ID) DESC ";

Linux中随机密码的生成

17 views 七月 16, 10 by Timothy

Linux中提供方便的让我们生成随机密码的功能,并且生成的密码有一定的复杂度,符合密码规范。下面是Linux中生成随机密码的两种常用的方式:

1.用mkpasswd命令:

使用mkpasswd命令,需要事先安装expect模块,以CentOS为例:

1
yum -y install expect

安装好后,直接运行mkpasswd,就能生成随机密码了。并且命令还有参数,比如设置生成的随机密码的最小长度,等等,看看help就知道了。

2.用passwdgen命令:

和mkpasswd大致一致,需事先安装passwdgen模块:

1
yum -y install passwdgen

安装好后,直接运行passwdgen,即可得到随机密码,同样passwdgen命令也有参数,可以参考help。

Page 2 of 6012345102030...Last »