Monthly Archives: October 2005

《论王垠》转自zmsazjs’s blog@newsmth

   
今天在newsmth blog上看到此文,感觉不错,转载过来,不过我支持王垠,因为我们生存的这个世界在某些地方确实需要些“喧闹”的刺激了。
==========================================================================================
写在前面的话:
Repair what you can ― but when you must fail, fail noisily and as soon as possible. ―Basics of The UNIX Philosophy
修复你能修好的―但是如果你注定失败,那就尽快喧闹的退出。―UNIX基本哲学
   
前段日子,王垠退学的事情在网上闹的沸沸腾腾,大家众说纷纭。这是可以理解并接受的,因为每
个人都有其独特成长经历以及从中获得的固定知识结构,并据此对事情作出不同反应的权利。从我个人的角度,我是理解王垠的,因为理解其逻辑所以理解痛苦,或
者换个表达的方式,在这个世界上,linux群体的人也许更容易贴近王垠的内心。
   
但我从不认为linux是一个特殊的群体,更不是一个精英群体,linux大体上只能说是属于一个特立独行的弱势群体。linux,发展到今天,老实说已
经不能再说仅仅是一个技术层面上的操作系统,它已经上升为一种精神:自由、共享、反抗、叛逆、改造、进步,这与社会上的残酷现实是格格不入的,也不能被世
人广泛接受,尽管它们在linux群体内部非常流行,被承认、被奉为经典。从技术层面上讲,linux正在变得越来越现实,所以我相信,不久的将来,
linux会成为人们除了windows之外的一个选择,但不管怎么样,在linux背后,推动其发展的人骨子里有游离于社会的趋势。搞linux的人,
理想化的情绪应该讲非常严重,在他们的性格里,大多数事情,大多数情况下是没有中庸这个概念的。妥协、折衷几乎很少被考虑并接纳。
   
可是王垠这么“喧闹”地退出,出乎我的意料与想象。这种“喧闹”严格讲不包括在linux精神里面。Repair what you can ―
but when you must fail, fail noisily and as soon as possible. ―Basics
of The UNIX
Philosophy。修复你能修好的―但是如果你注定失败,那就尽快喧闹的退出。―UNIX基本哲学。我觉得这是王垠对unix哲学的错误理解。很明
显,这句话的原意完全没在强调noisily一词。不管你怎么喧闹,也不管你喧闹的本意是否是在引起整个社会的警觉,社会对这种喧闹的反应,在广度、深度
上还是在时间上都是有限的。很快,人们就会学会忘记与不介意。至于事件本身的意义,没有多少人会去揪住的。默默地管好自己已经很了不起了。
   
对自己的定位和对社会的定位的不一致,也是原因之一。从本质上讲,每个人都附属于一种精神,并建立起对自己和对社会的期望值。当现实与期望相差太远的时
候,矛盾就不可调和,王垠是一个异类,在中国,在世界上,象他这样对自己、对社会定位这么高的人没有多少。不管这种高定位是否能实现、是否实在,其本身还
是值得敬佩、叹服的。比起那些没有理想,跟死了没两样的人,不知道高明多多少。所以,我坚信,如果在我们这个社会里,每一个个体都有王垠那般自觉自悟,那
么这个社会该是多么美好!然而,你能不说这是一个悲剧吗?
    理解,欣赏,并不支持。
                                                written by zmsazjs

女人与狗的对比

狗比女人更忠诚,它不会背叛你。
狗比女人开销小,它不会胡花钱。
狗比女人更听话,它不打小算盘。
狗比女人更善良,它不会伤害你。
狗比女人更可爱,它不和你吵架。
狗比女人更专一,好狗不识二主。
狗比女人更诚实,不会撒谎骗你。
狗比女人品质好,没狗会势力眼。
   所以我决定,去养一条狗!

原来女人是无理性的

    李敖在复旦的演讲的时候,有一位女生提出“关于对女人看法”的问题。当听完李敖的回答后,才明白原来自己过去对女人的理解一直是错误的,自己把女性当作了理性的动物*。

    “女人是感性的动物而不是理性的动物”,原来这是一句适用于广大女性的真理。能打动女人的是瞬间的感动,是虚幻的浪漫,而不是恒久的真实。不知道是女性不愿去思考还是不会思考,她们很少会去纵观“历史”,横观“现今”运用理性的头脑去分析身边的事物,去找到一个真正真确的答案,而往往喜欢“感情用事”,在某种情形下会完全丧失分析判断的能力,这应该是女性的悲哀,不过也许这样女性才会显得可爱。

    我一直都是很尊敬女性的,只是有时侯她们让我感到失望。

    (*本文中出现的“动物”一词不含贬义。)

听李敖演讲有感

    昨日终将李敖先生在北大、清华、复旦的演讲完整的听了一边,感觉畅快,心中明亮了许多,并感觉到了开明政治的味道。李敖先生的这次演讲对大陆是一件很好的事情。

    李敖先生不愧为当今的一代斗士,敢说敢当,别人回避的问题,他敢于指出,并告诉了大家解决问题的方式。很务实的希望祖国强盛,是一位真正的爱国主义人士。

    这次李敖先生到大陆三所高等学府做演讲,议定的主题是“神州文化之旅”,而李敖实际的讲演则更偏重与对青年学子的教诲,告诉我们要务实、聪明的追求自由,热爱祖国,富强祖国,当然这也是离不开文化的。李敖将在北大、清华、复旦三所高校的讲演题目分别定义为“金刚(目真)怒”、“菩萨低眉”、“妮姑思凡”,这是一个系统的演讲,循序渐进的告诉大陆的青年学生,不要盲目没有方式的去追求自由、民主,而需要聪明的,有技巧的,符合时代发展的去追求民主、自由,这样保护自己,也使祖国更加强盛,达到目的,因为我们曾经受到过伤害。在我们《中华人民共和国宪法》里面已经付予了我们很多很高的权利,我们是拥有这种权利的人,我们需要做的只是去兑现这一条条的“债务”,使它得以落实。这才是目前中国民众要走的强国之道。

    感谢李敖先生为我们带来的演讲,感谢李敖先生对祖国进步作出的努力。期盼中国有更多的李敖出现,有胆识,有才华,有作为。

生成扫描代理服务器IP段列表的程序

/***********************************************************************
The program is used for create a IP list for proxy tiger(by chice@smth) identify.
The proxy tiger download url:
http://learn.tsinghua.edu.cn/homepage/2004013134/proxytiger.py
Author: Binglin Yang
Date: 2005/10/20
**********************************************************************/
 
#include <stdio.h>
#include <stdlib.h>
 
void generateIP(int,int ,int,int ,int,int,int,int,int, char[]);
 
main()
{
     int A_count,A_count_up,B_count,B_count_up,C_count,C_count_up,D_count,D_count_up,port;
     char protocol[10];
     char choice;
     int flag=0,ok=1;
     do
     {
 
/*要求输入A段地址下限,并检测输入是否正确*/
          do
          {
               printf("nPlease input A_count:");
               scanf("%d",&A_count);
               if (A_count<1 || A_count>255)
               {
                    printf("nIP error! Retype!");
                    ok=1;
               }
               else
                    ok=0;
          }while(ok);
 
/*要求输入A段地址上限,并检测输入是否正确*/
          do
          {
               printf("nPlease input A_upper_bound:");
               scanf("%d",&A_count_up);
               if ( A_count_up<A_count || A_count_up > 255)
               {
                    printf("nIP error! Retype!");
                    ok=1;
               }
               else
                    ok=0;
          }while(ok);
 
/*要求输入B段地址下限,并检测输入是否正确*/
          do
          {
               printf("nPlease input B_count:");
               scanf("%d",&B_count);
               if ( B_count < 1 || B_count > 255)
               {
                    printf("nIP error! Retype!");
                    ok = 1;
               }
               else
                    ok = 0;
          }while(ok);
 
/*要求输入B段地址上限,并检测输入是否正确*/
          do
          {
               printf("nPlease input B_upper_bound:");
               scanf("%d",&B_count_up);
               if(B_count_up < B_count || B_count_up > 255)
               {
                    printf("nIP error! Retype!");
                    ok = 1;
               }
               else
                    ok = 0;
          }while(ok);
 
/*要求输入C段地址下限,并检测输入是否正确*/
          do
          {
               printf("nPlease input C_count:");
               scanf("%d",&C_count);
               if ( C_count < 1 || C_count > 255)
               {
                    printf("nIP error! Retype!");
                    ok = 1;
               }
               else
                    ok = 0;
          }while(ok);
 
/*要求输入C段地址上限,并检测输入是否正确*/
          do
          {
               printf("nPlease input C_upper_bound:");
               scanf("%d",&C_count_up);
               if(C_count_up < C_count || C_count_up>255)
               {
                    printf("nIP error! Retype!");
                    ok = 1;
               }
               else
                    ok = 0;
          }while(ok);
 
/*要求输入D段地址上限,并检测输入是否正确*/
          do
          {
               printf("nPlease input D_count:");
               scanf("%d",&D_count);
               if ( D_count < 1 || D_count > 255)
               {
                    printf("nIP error! Retype!");
                    ok = 1;
               }
               else
                    ok = 0;
          }while(ok);
 
/*要求输入D段地址上限,并检测输入是否正确*/
          do
          {
               printf("nPlease input D_upper_bound:");
               scanf("%d",&D_count_up);
               if ( D_count_up < D_count || D_count_up > 255)
               {
                    printf("nIP error! Retype!");
                    ok = 1;
               }
               else
                    ok = 0;
          }while(ok);
 
/*输入端口号和代理协议*/
          printf("nPlease input PORT:");
          scanf("%d",&port);
          printf("nPlease input PROTOCOL:");
          scanf("%s",protocol);
 
/*calls generateIP function */
          generateIP( A_count,A_count_up, B_count,B_count_up, C_count,C_count_up, D_count,D_count_up, port, protocol);
          printf("Do you want to add new IP segment?(y/n):");
          getchar();
          choice = getchar();
          if ( choice == 'y' || choice == 'Y')
          {
               flag=1;
          }
          else
               flag=0;
     }while(flag);
}
 
void generateIP(int A_count,int A_count_up,int B_count,int B_count_up,int
           C_count,int C_count_up,int D_count,int D_count_up,int port,char
           protocol[])
{
     char IP[30];
     FILE *fp, *fopen();
     fp=fopen("proxylist","a");
     int B=B_count,C=C_count,D=D_count;
     for ( ;A_count<=A_count_up;A_count++)
     {
          for ( ;B_count<=B_count_up;B_count++)
          {
               for ( ;C_count<=C_count_up;C_count++)
               {
                    for ( ;D_count<=D_count_up;D_count++)
                    {
                         sprintf(IP,"%d.%d.%d.%d:%d@%sn",A_count,B_count,C_count,D_count,port,protocol);
                         fputs(IP,fp);
                    }
                    D_count=D;
               }
               C_count=C;
          }
          B_count=B;
     }
     fclose(fp);
}

夜茫茫

  滕檫 再一次的像昨晚一?
  把皮依穿上 孤?彦擂理流浪
  明天 我很清楚 ?也不知道在那方
  
  忘?你 ?未能忘 愈躲檫 偏偏碰上
  情不死 剿必再次受?
  算吧 碉好出走到?邦
  侦叫我 呃?情樘 路?? ?起以往
  才清楚 身?那彦一?
  我??夜茫茫
  
  星光樽照下最怕幻想 酒醉午夜更是迷惘
  剿此一生 找不到太? 未知身?那方
  我但迂?咄夜茫茫
  
  何必 再把你的沛?放心上 可以找一?
  取代你也是平常
  侦知 我的真心
  怎也不懂得去假砚

想要寻找新的朋友了

     换一种心情生活吧。今天又是一个下午才起床的日子。迷茫、困惑、失落、伤感已伴我太久,我需要新的“朋友”了。

    感谢华仔,感谢你的歌声,你的歌声已伴我十年有余,每当我失意、伤感的时刻,你的歌声总能给我安慰,替我倾吐心中的苦闷,在那黑暗的长夜里,只有你的歌声和我交流,陪我度过那失眠的慢慢长夜。你的声音已成为自己内心深处的一个自我独白。

    感谢化哥,从小就喜欢听你的歌,但随着自己的成长才慢慢的理解了你的歌声,逐渐的,你的歌已变成了我的知己。在每一个困惑的时期,都会聆听你的歌曲,和它们进行思想深处的交流,同时也就会明白的更多。每过一段时间听你的歌,都会有新的发现。

    自己的生活也许太过于自我了,也许又太过于失去自我了,总之已消沉太久。应该换一种生活模式了,简简单单、快快乐乐的活,欣赏自己,欣赏他人。

    应该去聆听新的音乐了,感受那快乐的冲击。

递归删除相同文件名文件的脚本


#!/bin/sh
#Author: SwordGreen
#Date: 11/10/2005

fileName=$1
delFile()
{
    for dirName in *
    do
      if [ -d "$dirName" ]
          then
          cd "$dirName"
          delFile
          if [ -e $fileName ]
              then
              echo "Deleting $PWD/$fileName"
              rm -f $fileName
          fi
          cd ..
      fi
    done
}
if [ ! $# = 1 ]
    then
    echo "Usage:delfile filename"
    else
          delFile

          if [ -e $1 ]
              then
              echo "Deleting $PWD/$1"
              rm -f $1
          fi
fi