《汉晋春秋》:“五月辛巳,(懿)乃使张郃攻无当监(注10)何平于南围,自案中道向亮。亮使魏延、高翔、吴班赴拒,大破之,获甲首三千级,玄铠五千领,角驽三千一百张,宣王还保营。”《晋书·帝纪第一》:“帝攻拔其围,亮宵遁。”二书又是大相泾亭。
《晋书》为司马懿表功的意图是很明显的,这就大大降了其真实性。真实情况,在《三国志·魏书》诸传不见其详,然则在《蜀书·王平传》里便提到了:“九年,亮围祁山,平别守南围。魏大将军司马宣王攻亮,张郃攻平,平坚守不动,郃不能克。”此段与《汉晋春秋》相符,而无当监何平,便是这里的王平(注11)。所以《汉晋春秋》此事的真实性是很高的。
这里“平坚守不动,郃不能克。”故有其原因,《王平传》:“丞相亮既诛马谡及将军张休、李盛,夺将军黄袭等兵,平特见崇显,加拜参军,统五部兼当营事。”那么此时王平所领便至少有原五将之兵,加以坚守重围,即使巧变如张郃,也无计可施,“郃不能克”,但也表明不是军败,所以“亮使魏延、高翔、吴班赴拒,大破之”所击破的应是司马懿部。
“获甲首三千级,玄铠五千领,角驽三千一百张”应是一场相当大的败仗,《三国志》里各传原文,对此战的以上过程尽皆隐去不提:《张郃传》:“诸葛亮复出祁山,诏郃督诸将西至略阳,亮还保祁山。”《诸葛亮传》:“九年,亮复出祁山,以木牛运,粮尽退军。”陈寿掩盖了司马懿败战的事实,然而终究还是在《王平传》中描述了一点详情,既使在这里,司马懿之败也被略去,然而恰恰是《王平传》中的这部分事迹,证实了《汉晋春秋》相关部分的准确性,而让我们能一窥其真相。而《晋书·帝纪第一》相关此战的记载以此推断更有可能是后来编造,所以裴松之所注里未见到《晋书》原始资料的痕迹。
此战的结果,《三国志》诸传皆为蜀军粮尽退兵,独《晋书》雄浑的一笔:“帝攻拔其围,亮宵遁。追击,破之,俘斩万计。”着实搞笑。然而正相反,堂堂征西车骑将军、百战不摧的张郃,却丧身于木门道的追击作战中。
《三国志·张郃传》:“郃追至木门,与亮军交战,飞矢中郃膝,薨,谥曰壮侯。”这是较正式的说法,然而却是为司马懿隐讳,关于实情,《魏略》所记甚是清楚:“亮军退,司马宣王使郃,郃曰:‘军法,围城必开出路,归军勿追。’宣王不听。郃不得已,遂进。蜀军乘高布伏,弓弩乱发,矢中郃髀。”木门之战的过程,刘琳注《华阳国志·刘后主志》,转引《御览》卷291,引袁希之《汉表传》: “亮粮尽,军还至青封木门。 郃追之。亮驻军,削大树皮题日:‘张郃死此树下’,豫令夹道以数千强弩备之。郃果自见,千弩俱发,射郃而死。”
在这里,张郃与司马懿发生了最后一次争执,其结果是张郃最终丧失了性命。“军法,围城必开出路,归军勿追。”曹操定出这样的军法,也是当年有所认识的:征张绣之战,曹操正是以死地之兵,击退追来的张绣刘表联军(注12),司马懿对此也定有所知。而此时的蜀军远胜于当年张绣刘表联军、木门道又是天下至险之地,在这样的地点追击这样的归师,实际上绝对是将张郃置于死地。张郃对此一定有所觉悟,然而主将有强令,他尽管“不得已”,还是得遵命,而这一次的情况,又被他自己料中了。
与同一个人发生这么多次争执,在司马懿一生中是仅见的,而几乎每一次都是被张郃所料中,司马懿在道理上处于劣势,自郃一死,全魏就再未出现在智计上使司马懿这样出于劣势的人。陈寿对张郃的评价是:“郃识变数,善处营陈,料战势地形,无不如计,自诸葛亮皆惮之。”这样的智将,在朝野内外有着崇高声望,为敌人所惧怕的同时也难免为猜忌多权变的司马仲达所忌惮。
更明显的是,此战中张郃所料皆如计,而司马懿先有上邽之失,后有祁山之败,这便势必会动摇他今后的统帅地位。于是,在魏国胜局已定的情况下,木门口追击战很有可能成了司马懿借刀杀人之法。