最近在追新亚文化在喜马拉雅 FM 上连载的音频课程「中国通史大师课」,今天听到的是黄朴民教授讲春秋时代的战争。他说春秋的争霸战争最重要的特点,就是他们会按照西周传下来的「军礼」来打。比如打仗要师出有名,只有九种特殊情况(「九伐之法」)才能起兵;比如敌国办丧事的时候不能打(「不加丧」),闹灾荒的时候也不能打(「不因凶」)。这两个原则都还有对应的实例。一次是晋国打齐国,因为齐国国君暴亡而撤兵。一次是越国闹灾荒,吴王夫差还给越国借粮(但反过来,吴国灾荒的时候,越国借出去的是煮熟了的种子)。
最有名的一个例子大概就是宋襄公了。
冬,十一月,襄公與楚成王戰于泓。楚人未濟,目夷曰:「彼眾我寡,及其未濟擊之。」公不聽。已濟未陳,又曰:「可擊。」公曰:「待其已陳。」陳成,宋人擊之。宋師大敗,襄公傷股。國人皆怨公。公曰:「君子不困人於阸,不鼓不成列。」子魚曰:「兵以勝為功,何常言與!必如公言,即奴事之耳,又何戰為?」
《史記·宋微子世家》
宋襄公因为恪守军礼,不接受大臣(也是他庶出的哥哥)目夷(子鱼)的建议(不等楚军过河布好阵势就开战),结果吃了败仗,损失惨重。听到这种事比较通常的看法是,宋襄公是一个正人君子,或者憨厚仁慈、过于老实的好人。但我不这样看。倒并不是因为史书上记载是宋襄公先伐郑(楚的属国),楚军才打来的,倒不是因为这样我觉得宋襄公不是什么好人。我们就假设这是一场卫国战争,楚军是侵略者,宋襄公完全是正当防卫。这时候宋襄公恪守军礼,算不算是道德模范?
这里有两种思考道德问题的思路。一种是心中有很多道德规范,必须无条件遵守,这就是义务,而不是利益计算的结果。另一种就是具体的得失分析,做各方利益的评判。比如说谎不对,你可以说说谎本身就是不对的,诚信是一种义务;也可以说因为说谎会造成别的什么问题,所以说谎不对,或者在这个具体情况下说谎不对。
第一种思路很容易忽略很多具体的问题,总在抽象的原则层面思考问题。宋襄公想的是遵从军礼,「君子不困人於阸」。但当你这样选择的时候,必须接受一个结果,那就是自己很有可能会战败(因为「彼眾我寡」),战败并不是抽象的战败,战败意味着士兵的伤亡。所以宋襄公做君子,其实是以手下士兵的伤亡为代价的,事实上他自己也伤了大腿。这就是具体的得失,具体的利益变化。我认为你可以推崇某种道德原则,但在抉择的时候,必须想到这些可能发生的具体结果——为什么我不认为宋襄公憨厚仁慈,因为他在慷他人之慨。事实上很多以第一种思路想问题的人,不太容易想到这些具体结果。这是我认为推崇道德原则的人必须弥补的地方。你不能说事情的结果怎么样不重要,重要的只是处事原则,这是说不过去的。比赛结果可以放弃,但伤痛甚至生死必须纳入考虑的范围。