Tuesday, September 27, 2011

我不愿与别人比较无知,因为我一直都不知道自己有多无知;当以知道自己的无知程度作为自己不无知的标志时,这是我的无知;当以不知自己无知作为不无知的开始,这是我最大的无知;一句话中这么多的无知,绝不是我不无知的展示,而是沐猴而冠的开始



两千多年前,西楚霸王项羽一把火烧了富丽宏伟的秦国宫室之后,便打算引兵东归,回老家彭城。他对部下们的解释很直白——“这就像一个穿着锦绣衣饰的人,走在夜路中一样。如果不能让人看见,又有什么用呢?”事后一个小兵就不满,便暗地里骂项羽“衣锦还乡,沐猴而冠耳”。项羽听了不高兴,就将这小兵杀了。

沐猴而冠这个成语从此而来。沐猴而冠,用现在的话说,就叫装逼。

贫穷,丑陋,无知对于人来说是永恒的,而与之相反的富有,英俊/美貌,才华却大多时候都只是短暂的闪现。而人却不甘于承认这些,不愿直视自己的不足;其间虽有各种精神的闪现,此文却只想谈论负面作用——沐猴而冠。(本段中的“人”,就是“我”)

贫穷需要如何摆脱?一百多年前,马克思第一次思考这个问题的时候发现,当生产力生产关系*******,人类最终就走入了共产主义社会,摆脱了贫穷。于是,一百多年来,从德国到法国,从俄国到中国,从朝鲜到越南,共产主义的洪流蔓延了一个世纪。结果如何呢?共产主义造就了人类历史上第一次全人类的文明危机。

共产主义仿佛是上帝派往人间的魔鬼。上帝问人类,你们想摆脱贫困吗?有人答曰:想。上帝不说话了,魔鬼说,想摆脱贫困,必须实现生产力与生产关系***********。人类说,可是我们生产力******需要很久,估计几百年。魔鬼笑了,是啊,是要很久,前提是你什么也不做。人类若有所悟。魔鬼又笑着说,贫困的摆脱,需要全人类的一致合作,你们自己看着办吧。

这道题由马克思提出之后,就交给了世界上各个民族,并且告诉了全人类,实现共产主义的捷径便是,用自由、原则、希望、文明去换。可是事实是,这个捷径能不能走到,从来没有人验证过。所以,最终接受共产主义的民族,他们的特征是:自由、原则、希望、文明最廉价的地方。而且,因为这些民族发自内心认为自己比其他民族更优秀、更先进,才更适合这种拯救全人类的先锋角色;这正满足了他们民族内心的优越感。所以,共产主义在越是幼稚、落后的地区越是繁衍,因为它们最符合魔鬼所要的条件——战败的法国、战败而贫穷又最受西方鄙视的俄国、民族自尊心极度受挫的中国、大韩民族。强烈的民族优越感,强烈的装逼意识,使得他们不愿放弃这个诱惑。大和民族对于共产主义,一定不会拒绝。可笑的民族,才会做出可笑的事,这就叫沐猴而冠。

讨厌贫困的人最喜欢“炫富”,就像讨厌丑陋的人最喜欢张贴自己的“美貌”一样;同样的道理,内心中不承认自己无知的沐猴最喜欢在日志里表示自己的“卓越远见”——比方说,关于沐猴而冠的看法。


我一直不愿谈论一个问题——自己的相貌如何。如果让我看到两张女人的脸,问我谁好看,我可以凭借看一下就断定谁胜谁负。不过对于牵涉到自己的相貌,却无法断定——哥哥曾经问我,我俩谁“帅”,我当时第一反应就是跟他说,当然是你帅了。只因当我见到自己相貌的时候,内心带有太多偏见,不愿承认自己比别人长得丑,又难以接受自己长得好看这种沐猴而冠的装逼想法。

情人眼里出西施,或许爱上别人后,第一件事就是无法判断你的意中人的相貌美丑了。同样的道理,母亲最不愿承认的是自己儿子长得丑,不过也很少有老妈当别人面夸自己儿子好看的。掺杂有太多主观因素的相貌评判,实在是让人无法接受;而毫无主观因素的争竞美貌,却让人觉得太过空虚。

释迦看的最是清楚,所以让人觉得消极避世;孔子曰“中庸之道”,不想看到太多世人的沐猴而冠。人因有欲而追求,人因无知而装逼;若人略知中庸,就不会有太多的帽子戴着猴子头上。若孔子得遇释迦,世上就又多了一个佛教徒。



Sunday, September 25, 2011

Java program for Running System command (test one)

使用java 去compile文件再执行local file
import java.io.*;




//use this thread to evaluate java class file

public class RunJava extends Thread {

public static final int FIVE_SECONDS = 5000;

private Process p = null;

// added in for java sandbox security control

private String cmd = "java -Djava.security.manager -Djava.security.policy==\"E:/Program Files/WampServer/gradingsystem/gspolicy\" -classpath ";

private File txt = null;



public RunJava(String classDir, String classname, String outputDir){

cmd = cmd +"\"" + classDir + "\" " + classname;

System.out.println(cmd);

txt = new File(outputDir + "/" + classname + "_RunOutput.txt");

try{

if(!txt.exists())

txt.createNewFile();

}

catch(Exception e){

System.err.println(e.getMessage());

}

}

public void run(){

Runtime jRun = Runtime.getRuntime();

try {

p = jRun.exec(cmd);



//get input stream, and write content to output file

BufferedInputStream in = new BufferedInputStream(p.getInputStream());

BufferedReader br = new BufferedReader(new InputStreamReader(in));

PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(txt)));

StringBuilder sb = new StringBuilder("");

String s = "";

while ((s = br.readLine()) != null)

sb.append(s);

pw.print(sb.toString());

pw.close();

p.waitFor();

} catch (Exception e) {

System.err.println(e.getMessage());

}

}

public void killThread(){

//kill RunJava, and delete output file

p.destroy();

if (txt.exists())

txt.delete();

}



public static void main(String[] args) {

//take input string from outside

String classDir = args[0];

String classname = args[1];

String outputDir = args[2];



//for debug

/*System.out.println("classDir: " + classDir);

System.out.println("classname: " + classname);

System.out.println("outputDir: " + outputDir);*/



try {

//Start a new thread

RunJava run = new RunJava(classDir, classname, outputDir);

run.start();



//limit running time

long start = System.currentTimeMillis();

long end = start + FIVE_SECONDS;

do{

Thread.sleep(100);

if(System.currentTimeMillis()> end)

run.killThread();

} while(run.getState().toString().equals("RUNNABLE"));



System.out.println("Program Finished!");

}

catch (Exception e) 

{

System.err.println(e.getMessage());

}

}

}