读启良的《中国文明史》,里面有谈到外柔而内厉——中国政府自古以来奉行的准则。大致意思是说,我华夏民族对待周边民族,历来是很友好的,即所谓的“柔”,而对待自己人,向来是“刚”或曰“厉”的。

  不像西方国家,以及我们东边儿的那个邻居,一站到别人的土地上就烧杀抢掠,建立殖民地……,我们从不(或曰很少)发动侵略战争,从不(或曰很少)恃强凌弱,我们所到之处,带去的不是杀戮,而是传播文明的种子。这种以天下为己任的姿态,同中国古代知识分子的心态,是相吻合的。中国古代的知识分子,即“士”阶层,对待野人、蛮夷,向来都是采取感化、同化的方式,虽带有那么一点清高,以居高临下的目光看待他们,但体现地更多的则是人文关怀。最典型的如郑和下西洋,当时中国的国力是何等强盛,郑和带领的船队是何等威风,但所到之处,只是和当地政府进行贸易,以及帮他们解决内乱,传播文明,从来没想过要欺负他们,或从他们那里捞到点什么好处(虽然郑和的主要目的是找人,但这不影响问题的这一方面)。即便是外族入侵,我们通常也只是把他们赶出去,让他们别再来骚扰而已,并没有割地赔款,更没有赶尽杀绝。这是对外的,对内,则完全是另外一番景象,什么株连九族啊,兄弟相残啊,坑杀、屠城啊,比比皆是。

  为什么会这样呢?启良给出了很好的解释,因为对“外”,国家虽是属于君主的,但更是属于臣民的,国家利益受损,损失的是臣民的利益,只要不威胁到王权,君主照样可以锦衣玉食、骄奢淫逸;而对“内”,国家就是属于君主一人的了,一旦江山丢了,可不止是脑袋搬家那么简单,通常都直接给改朝换代了,到了地下都没脸见祖宗。一个为公,一个为私,孰轻孰重,孰先孰后,自然就见分晓了。

  虽如此说,前不久看三国,看到孔明南征时七擒孟获那一段,还是有点困惑了。孔明对孟获六擒六纵之后,孟获就从别处搬兵,搬来的救兵穿的都是用藤条特制的“铠甲”,刀枪不入,孔明只得用火攻。当孔明想到“火攻”这两个字,想到将有万千士兵葬身火海,生灵涂炭时,脸上写满了不忍。看到这里,我忽然想,火烧赤壁时,他怎么就没有流露出一点不忍之心呢?当孔明和周瑜把写在自己手上的“火”字同时亮出来时,两人的表现是英雄所见略同的哈哈大笑;当孔明祭风,借得东南风时,他有的是胸有成竹的惬意和必胜的信心。虽未亲见火烧赤壁的惨烈,但他做这些事情时,应该是想象得到的。难道中国人真的如此,对待外族那么友好,对待自己的同胞就如此残酷?这也是一种“外柔而内厉”的表现,但用启良的解释说不通,这样的作为也不符合孔明的人物性格。那究竟是怎么回事呢?

  想了想孔明的处境,忽然明白了。孔明之所以能对孟获缕擒缕纵,说明孟获根本不是他的对手,孟获根本就被他玩弄于股掌之间。对待这样的一个弱者,人往往表现出来的是怜悯、是大度。对于那群可能因自己的一个决策命运就会被完全改变的士兵来说,自己就像一个刽子手。作为军师,孔明可能在想,他们的命运是操控在我手中的,可能还有更好的办法,让他们免于一死?可是我没有,我只能这么做,我必须这么做。虽是无奈之举,但这个决策是我做的,这个命令是我下的,我对他们的死负有不可推卸的责任。就像房玄龄临死之时,说自己的手上沾满了鲜血一样。而赤壁鏖战时,情况则截然相反。当时刘备接连败退,不得已而去联合东吴。也就是说,当时的情况,曹操是强者,孙刘是弱者,曹操是侵略者,孙刘是被侵略者。当是时,孔明要做的当然是自卫了,对待侵略自己的强者,那当然是什么招强用什么,什么招恨出什么,哪还管什么生灵涂炭不涂炭呢。

  以上,终于明白了,外柔而内厉,实则是外弱而内强,外在威胁小而内在威胁大。想想古代中国,确实是这样的,清末以前,在可知的范围内,我华夏民族一直都是最强大的,而且周边民族、国家是被远远地、远远地甩在后面的,根本不在一个级别。而内在,由于大一统的专制统治,权利是属于皇帝老儿一个人的,所有的臣民都是他的奴隶,所有臣民的生杀大权都由他掌握。如此,皇帝的宝座便格外诱人,而汤武革命模式的开启,“唯德者宜在高位”的思想,“以有道伐无道”的口号,又使那高高在上的皇位极其地不稳,皇帝老儿丝毫不敢放松,连睡觉都得睁着一只眼睛。一方面,是皇帝对臣民的压榨和奴役,另一方面,是臣民对皇位的觊觎,这一切,使得每个人头顶都有一团乌云,大家都不敢懈怠,大家又都是高手,“内厉”也就在所难免了。谈到这里,也就不难理解为什么从古至今,中国政府一直奉行“攘外必先安内”的政策了。

  外柔而内厉,体现出的有君主的“势”和“术”,也有知识分子的民本主义精神。君主方面的,我不想多说,我只想说,中国的知识分子一直背负着沉重的十字架,游走于君主和人民之间。一方面,他们以天下为己任,人民过得不好,他们便觉得是自己的责任;另一方面,他们又依附于君主,他们治理天下的权利是君主赋予的,俸禄是君主给予的,他们不得不以君主的意志为转移。他们可以向君主进谏,但听不听是君主的事,他们左右不了。他们就这样夹在君和民之间,无论站在哪一侧,另一侧的都会视他们为敌人。殊不知,他们忙来忙去,为的都是这二者的利益。他们很可悲,很可怜,但更可爱,明知不可为而为之,飞蛾扑火,前仆后继,正是他们这种大无畏的牺牲精神和以天下为己任的博大胸襟,成就了中国几千年的文明史,使中国大一统的专制王朝在兴衰交替、朝代变更中能够保持一种平衡,在不完善的制度之外提供了一种精神的力量,使社会安定、人民幸福。

2011.11.6

《中国文明史》系列—外柔 VS 内厉的更多相关文章

  1. 解决外网与内网或内网之间的通信,NAT穿透

    在网络编码中会发现程序在局域网中是可以适用的,但是在外网与内网之间和内网与内网之间就不可行.问题就在于NAT.首先介绍下NAT. NAT的作用NAT(Network Address Translato ...

  2. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(8)-DbSession线程内唯一

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(8)-DbSession线程内唯一 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建  ...

  3. 浏览器扩展系列————给MSTHML添加内置脚本对象【包括自定义事件】

    原文:浏览器扩展系列----给MSTHML添加内置脚本对象[包括自定义事件] 使用场合: 在程序中使用WebBrowser或相关的控件如:axWebBrowser等.打开本地的html文件时,可以在h ...

  4. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  5. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  6. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  7. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  8. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  9. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

随机推荐

  1. Java:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  2. 编写高质量代码:改善Java程序的151个建议(第3章:类、对象及方法___建议47~51)

    建议47:在equals中使用getClass进行类型判断 本节我们继续讨论覆写equals的问题,这次我们编写一个员工Employee类继承Person类,这很正常,员工也是人嘛,而且在JavaBe ...

  3. java占位符应用

    (转载自:http://www.cnblogs.com/happyday56/p/3996498.html) String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语 ...

  4. 基于NodeJS的秘室聊天室

    借着放假期间将NodeJS重新回顾了一下并玩了一下sketch来进行设计界面,很不错.(注:代码整理后会放到github上,请关注.) 本次聊天室我给它定义了一个名称叫“秘密聊天室”. 需求: 技术选 ...

  5. js实现蛇形矩阵

    参加腾讯前端实习生笔试,真的是被虐了千百遍,除了一条js程序题,其他半点前端都没有,都是考算法,计算机原理,数据结构.下面贴上腾讯笔试最后三大条中的一条,实现一个蛇形矩阵的输出.蛇形矩阵的什么样这里我 ...

  6. redis成长之路——(三)

    redis连接封装 StackExchange.Redis中有一些常功能是不在database对中,例如发布订阅.获取全部key(本代码中已封装到operation中了)等,而且StackExchan ...

  7. Devexpress GridView 列中显示图片

    首先将图片添加到ImageList中 添加GridView中Column void gridView1_CustomUnboundColumnData(object sender, DevExpres ...

  8. zip函数-Python 3

    zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表. zip函数在获取数据后,生成字典(dict)时比较好用. for examples: # Code based on P ...

  9. FPGA旋转编码器的实现

    module pmodenc( clk, rst_n, A, B, BTN,// A_Debounce,// B_Debounce,// BTN_Debounce,// Rotary_right,// ...

  10. 使用Ring Buffer构建高性能的文件写入程序

    最近常收到SOD框架的朋友报告的SOD的SQL日志功能报错:文件句柄丢失.经过分析得知,这些朋友使用SOD框架开发了访问量比较大的系统,由于忘记关闭SQL日志功能所以出现了很高频率的日志写入操作,从而 ...