我自己的mutt配置文件

尽管有n多人关于mutt配置写了文章,周未依旧有好多同学碰到好多问题,估计是参考了多个文章,或者使用的不是gmail。我答应他们把自己的mutt配置贴出来,用惯了mutt感觉很有意思。我用的是mutt+procmail+getmail+msmtp,分别把四个软件装上。

执行
mkdir ~/Mail
cd ~/Mail
touch index send .postponed default
创建各种邮箱

然后分别编辑下面的配置文件,文件书写规则刘洋博客和网上都可以查到。部分选项被我注释掉了,比如地址薄文件,这些大家可以自己慢慢完善。一些具体参数如邮箱地址、账户、密码等个人信息当然得换成自己的,其他的基本不需要改变。最后边的~/.mailcap可以解决html邮件乱码问题。

_______________________ ~/.muttrc

# 默认信箱目录
set folder=”~/Mail”
# 已读的信箱
set mbox=”~/Mail/inbox”
# 进入mutt后默认使用的信箱,可以考虑和$HOME/.procmailrc设置的默认信箱相同
set spoolfile=”~/Mail/inbox”
# 不清楚
#set postponed=”~/Mail/postponed”
# 已发送的信箱
set record=”~/Mail/sent” Continue reading “我自己的mutt配置文件”

Brainfuck编程语言

刚刚在老大博客里看到关于BF语言(由Urban Müller在1993年创建)的一篇文章
老大的理解:就是一个线性的表,有一个位置指针,然后对当前当前指向的位置进行加或减来得到需要的结果然后再用相应的方法进行输入输出。它总共有8个指令:
>指针加一;
<指针减一;
+当前位置的值加一;
-当前位置的值减一;
.将当前位置的内容作为ASCII码输出;
,输入一个ASCII码到当前位置;
[当指向单元为零时,向前跳转到对应的];
]当指向单元不为零时,向后跳转到对应的[;
Hello Wolrd的简单代码:
++++++++++[>+++++++>++++++++++>+++>+<<<++.>+.+++++++..+++.>++.<.+++.——.——–.>+.>..

我自己写的一段代码,输出什么?
++++++++++[>+++++++>+++>++++++++++<<+++.>++.>++++++++.+++.+++++++.
—————–.++++++++++++++++++++.
———-.++++++.<+.

几个Linux C函数的测试小程序

/*输出错误字符串
#include
#include
int main(void){
int i;
for (i=0; i<10; i++)
printf(“%d : %sn”,i,strerror (i));
}
*/
/*创建字符链接
#include
#include

int main(void){
symlink(“/media/sda6/movie”, “movie”);
return 0;
}
*/
/*改变当前目录
#include
#include
#include
#include
#include

int main(void){
int fd;
printf(“current working directory : %sn”, getcwd (NULL,(int) NULL) );
fd = open (“/home/kongove”,O_RDONLY);
fchdir (fd);

printf(“current working directory : %sn”, getcwd (NULL,(int) NULL) );
close (fd);
return 0;
}*/
/*获取当前时间
#include
#include

int main(void){
struct timeb tp;
ftime(&tp);
printf(“time:%dn”, (int)tp.time);
printf(“millitm:%dn”, tp.millitm);
printf(“timezone:%dn”, tp.timezone);
printf(“dstflag:%dn”, tp.dstflag);
return 0;
}
*/
/*获取密码*/
#include
#include

int main(void){
char *p;
p=getpass(“Input the Password:”);
if (!strcmp (“mypasswd”,p))
printf(“Passwd is :%sn”,p);

return 0;
}

八皇后算法

八皇后问题
在一个8×8国际象棋盘上,有8个皇后,每个皇后占一格;要求皇后间不会出现相互“攻击”的现象,即不能有两个皇后处在同一行、同一列或同一对角线上。问共有多少种不同的方法。
#include
int line[8],answer=0;
void show()
{
int i,j;
for(i=0;i<8;i++)
{
for(j=0;j<8;j++)
{
if(line[i]==j)
printf(“tQ”);
else
printf(“t*”);
}

printf(“nn”);
}
answer++;
printf(“nt%d ————-“,answer);
getchar();
}
int Judge(int t)
{
int i,n=0;
for(i=0;i<t;i++)
{
if(line[i]==line[t])
{n=1;break;}
if(line[i]+i==line[t]+t)
{n=1;break;}
if(line[i]-i==line[t]-t)
{n=1;break;}
}
return n;
}
void control(int n)
{
int t=8;
for(line[n]=0;line[n]<t;line[n]++)
{
if(Judge(n))
continue;
else
if(n!=7)
control(n+1);
else
show();
}
}
int main()
{
control(0);
printf(“%dn”,answer);
return 0;
}

shell中if的相关参数

[ -a FILE ]     如果 FILE 存在则为真。
[ -b FILE ]     如果 FILE 存在且是一个块特殊文件则为真。
[ -c FILE ]     如果 FILE 存在且是一个字特殊文件则为真。
[ -d FILE ]     如果 FILE 存在且是一个目录则为真。
[ -e FILE ]     如果 FILE 存在则为真。
[ -f FILE ]     如果 FILE 存在且是一个普通文件则为真。
[ -g FILE ]     如果 FILE 存在且已经设置了SGID则为真。
[ -h FILE ]     如果 FILE 存在且是一个符号连接则为真。
[ -k FILE ]     如果 FILE 存在且已经设置了粘制位则为真。
[ -p FILE ]     如果 FILE 存在且是一个名字管道(F如果O)则为真。
[ -r FILE ]     如果 FILE 存在且是可读的则为真。
[ -s FILE ]     如果 FILE 存在且大小不为0则为真。
[ -t FD ]     如果文件描述符 FD 打开且指向一个终端则为真。
[ -u FILE ]     如果 FILE 存在且设置了SUID (set user ID)则为真。
[ -w FILE ]     如果 FILE 如果 FILE 存在且是可写的则为真。
[ -x FILE ]     如果 FILE 存在且是可执行的则为真。
[ -O FILE ]     如果 FILE 存在且属有效用户ID则为真。
[ -G FILE ]     如果 FILE 存在且属有效用户组则为真。
[ -L FILE ]     如果 FILE 存在且是一个符号连接则为真。
[ -N FILE ]     如果 FILE 存在 and has been mod如果ied since it was last read则为真。
[ -S FILE ]     如果 FILE 存在且是一个套接字则为真。
[ FILE1 -nt FILE2 ]     如果 FILE1 has been changed more recently than FILE2, or 如果 FILE1 exists and FILE2 does not则为真。
[ FILE1 -ot FILE2 ]     如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在则为真。
[ FILE1 -ef FILE2 ]     如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。
[ -o OPTIONNAME ]     如果 shell选项 “OPTIONNAME” 开启则为真。
[ -z STRING ]     “STRING” 的长度为零则为真。
[ -n STRING ] or [ STRING ]     “STRING” 的长度为非零 non-zero则为真。
[ STRING1 == STRING2 ]     如果2个字符串相同。 “=” may be used instead of “==” for strict POSIX compliance则为真。
[ STRING1 != STRING2 ]     如果字符串不相等则为真。
[ STRING1 < STRING2 ]     如果 “STRING1” sorts before “STRING2” lexicographically in the current locale则为真。
[ STRING1 > STRING2 ]     如果 “STRING1” sorts after “STRING2” lexicographically in the current locale则为真。
[ ARG1 OP ARG2 ]     “OP” is one of -eq, -ne, -lt, -le, -gt or -ge. These arithmetic binary operators return true if “ARG1” is equal to, not equal to, less than, less than or equal to, greater than, or greater than or equal to “ARG2”, respectively. “ARG1” and “ARG2” are integers.
源于:http://hi.baidu.com/piaoliuzaiwai/blog/item/2000f3fc9ec960fcfc037f7f.html

转《Install Party 活动管理层筹备情况通报(11月15日9:00)》

目前 Install Party 的空白光盘均已寄出,部分场地的组织者已经收到了。但截至目前,Mandriva从法国寄出的活动物资仍然没有到达北京。我们已经对这些赠品不报任何希望。
经过紧张测试,现在完美支持中文的 Mandriva One 2008 已经放出。下载地址如下:

mandriva-linux-2008-one-KDE-Chinese-cdrom-i586.iso (限三线程)
mandriva-linux-2008-one-KDE-Chinese-cdrom-i586.iso (公网,无限制)
mandriva-linux-2008-one-KDE-Chinese-cdrom-i586.iso (教育网,无限制)
请务必核对MD5后再刻盘
49660af3c36b81595a5dace5beb65472 mandriva-linux-2008-one-KDE-Chinese-cdrom-i586.iso
这张盘只在 Mandriva Install Party 上提供,其它网站均无下载。与Mandriva常规的One相同,其特点在于:
完美支持中文,内置文泉驿字体、scim-bridge输入法。中文显示美观大方,中文输入顺手流畅。
Eva与Mandriva紧密集成,可让您与旧友随时开聊,亦可群聊。
蓝迪游戏与Mandriva深度合作,比公开下载的版本更加适合大众使用。
当然,自动探测硬件并启用各种开源闭源驱动程序,自动支持Compiz Fusion及Metisse三维桌面,也是Mandriva一贯的传统。特别值得一提的是,Mandriva One特别支持虚拟机(VMWare, VirtualBox等)的Guest系统。

周三晚上活动时,安计划把备份工具代码,在大家面前整体组合一下。发现了好多错误,并改正之,效率很高。不过回宿舍时已经停电了,不能上传代码了。第二天还得打印科技周活动的宣传图,而我还没来得及做。

第二天早上6:30起来搞定了上面的任务,搞完一看表──7:59   !!!紧往教室赶~~ 到一号实验楼时发现苗同学在查人,是期中什么检查好想很重要,于是从b楼后边跑了过去(碰到了经验比较丰富的高手,直接是从实验楼后边“暗渡”过来的),没被歹着,好险~~好幸运~~听说我们班几个同学被呆住了~~~同情~~

中午拿出去印好了,tttttmd太贵了,心疼小组的钱呀~~

Richard M. Stallman 给《自由开源软件本地化》写的前言

自由软件是尊重用户自由的软件。它意味着用户可以自由地运行程序,自由地学习和改变软件(或者雇人帮他们做),自由地重新发布拷贝,以及自由地发布 修改版本。其结果是用户可以自由地分享软件,并形成社区以对他们使用的软件进行有效的控制。自由软件也可能是免费的,但并非总是如此。
一些用户将这称为开源。这个词代表的是大量的开发者和用户通过对软件的审议带来的技术优势,使用这种软件的商业优势,以及支持其开发和使用的商业模式。而“自由软件”这个词指的是自由的社会和道德价值,以及它带来的实际益处。
分享和改变像软件这样的有用创作是社会和技术的共同要求,它引起了一场“出版”意义的革命。传统的印刷出版要求读者把作品看作固定不变的——作品完 成后读者只能被动地使用。这种技术不允许没有自己的出版社的读者们改造、提高和分享书籍,而读者们也习惯了这些限制。因此当大量的公民开始使用个人计算机 时,许多人都没有质疑立法和商业机构施加于软件上的类似限制。但这一次,这种限制并不是技术的自然结果。它是由认为控制用户有利可图的软件开发者带来的。 这些开发者限制用户分享软件,而且不让用户得到源代码从而阻止他们改变软件。但现在,用户有了选择:自由软件,由多达上百万开发者——一些是志愿者,一些 从中获得报酬——组成的社区的产品。自由软件允许用户充分利用他们计算机的能力。它是我们逃离印刷出版的限制的一条途径,让软件在用户当中,为了用户的目 的,由用户来开发。这样的软件不会采用通过限制用户来鼓励开发的错误的激励机制,这样的机制产生人为的稀缺。用户可以按照自己的意愿制作软件。软件的用户 可以自由地运行、分享,并通过集体或个人对其进行修改。这就是自由/开源软件(Free and Open Source Software, FOSS)的世界。
非自由软件让用户孤立无援。当一个国家增加非自由软件的使用时,那不是发展,而是永久性地依赖。只有使用自由/开源软件才能实现可持续发展——它是本地人民能够自由学习、维持、改造和利用的技术。政府怎样推动国家采用自由/开源软件呢?有两种方法。首先,在学校中使用自由软件能教会孩子们社群协作的精神,同时造就能熟练使用和维护自由软件的毕业生。第二,规定在政府部门中使用自由软件将使这些毕业生的技能有用武之地,并建立起自由软件支持的本地经济。

国际开源组织(the International Open Source Network, IOSN)是 UNDP 亚太开发信息项目的一个机构,其工作指导方针是“所有人的软件自由”(Software Freedom for All, SFA)。组织的工作包括提供支持和技术帮助,发展的中心,以及一个亚太地区自由/开源软件信息交换的场所。通过 IOSN/SFA 项目,UNDP向政府部门、非营利组织、捐赠机构和其他组织提供政策支持和建议服务。它向自由/开源软件从业者和用户发布实用工具和学习材料,包括简单的 “如何”(how to)册子和指导书,培训材料,以及 GNU/Linux 操作系统的免安装 CD。它也支持自由/开源软件的本地化及其他研发活动,并组织会议和培训课程以联络相关各方,并增强当地能力。欢迎对这些活动感兴趣或愿意参与组织这些活 动的人们。
我很高兴能与 IOSN/SFA, APDIP 和 UNDP 合作,把软件自由的理念带给大众和开发部门。我们将协助跨越数字鸿沟,并用发展取代依赖。
Richard M. Stallman

注:项目首页在 http://rl.rockiestech.com/node/179

转自: http://blog.sina.com.cn/arthur5933

我是光棍我怕谁

今天是11.11,光棍节。做为一名“资深”的光棍,向各位孤男寡女表示的慰问,向常年工作在单身第一战线的全体同胞致以崇高的敬意。

单身情歌
曲:陈耀川词:易家福
抓不住爱情的我
总是眼睁睁看它溜走
世界上幸福的人到处有
为何不能算我一个
为了爱孤军奋斗
早就吃够了爱情的苦
在爱中失落的人到处有
而我只是其中一个
爱要越错越勇
爱要肯定执着 Continue reading “我是光棍我怕谁”

模拟下载进度条

#include <stdio.h>#include <unistd.h>
int main (){
        int i,j;
        for (j=0;j<23;j++){
                printf("n");
        }
        printf("[   >tttttttt   ]");
        for (j=0;j<64;j++)
                printf("b");
        for (i=0;i<61;i++){
                printf("b");
                for (j=i;j<i+1;j++)
                        printf("=");
                printf(">");
                for (j=0;j<64-i;j++)
                        printf(" ");
                printf("] %d%",i);
                for (j=0;j<67-i;j++)
                        printf("b");
                for (j=i;j/10!=0;j=j/10)
                        printf("b");
                fflush(stdout);
                sleep (1);
        }
        printf("n");
        return 0;
}

存在问题:1、对不同大小终端识别2、加快更新频率3、输出百分比