楚成王见形势不利,退回申地(今河南南阳)驻扎,防备秦国的袭击,又命令戍守齐国谷邑的申公叔时和围攻宋国的子玉率部撤退,避免与晋军交战。他认为晋文公在外流亡了十九年,险阻艰难,全都经历了:民情真假,他都知道了,上天使他享有高年,同时除掉他的祸患。天所予,不可败。但是子玉却骄傲自负,坚持要与晋军作战,他说:虽不敢保证一定能建立什么了不起的战功,但希望用胜利堵住奸邪小人(指楚大夫蒍贾)进谗言的嘴。于是,子玉派大夫宛春到晋军中谈判,条件是恢复卫侯的君位,同时退还曹国的土地,楚军解除对宋国的包围。狐偃认为子玉太无礼,晋君(文公)只得到释宋之围一项好处,而楚臣(子玉)却得到恢复曹、卫两项好处。不能失掉这个战机。先轸不同意,他认为楚国一句话就使曹、卫复国、宋解围,三个国家都安全,晋国如果不同意,这三国就均被灭亡,这就是晋国无礼。不如暗中答应恢复曹、卫两国,使他们叛离楚国;再用扣留楚军使者宛春的办法来激怒子玉,等打完仗再考虑曹、卫的问题。晋文公很高兴,就采纳了先轸的意见。曹、卫两国果然派人到子玉营中同楚断交。子玉十分气愤,立即率军北上与晋军作战。文公见楚军逼近,下令退避三舍(古时一日行军30里为一舍)。将士们对后退很不理解,认为晋君躲避楚臣是极大的耻辱,何况楚军攻宋不下,在外转战多时,已经疲惫不振。狐偃向他们解释这样做是为了报答文公当年逃亡时楚君给予的恩惠,兑现文公当年所许的“两国若交兵,退避三舍相报”的诺言。于是晋文公、宋成公、齐国大夫国归父、崔夭、秦穆公之子小子愁率军退后九十里,在卫国的城濮(今山东濮县南)驻扎下来。楚军随即逼了上来,在城濮附近的险要地带扎营。
晋文公既害怕别人议论自己忘恩,又担心士卒不愿尽力作战,所以在与楚交战的问题上犹豫不决。三军将领都劝他下决心打。狐偃认为,这一仗若打胜,就可以得到诸侯国的拥戴,取得霸主的地位;即便打不胜,晋国外有黄河之阻,内有太行之险,没什么可担忧的。栾枝也说,汉水北面的姬姓国都被楚国吞并,思念小恩小惠而忘记大耻大辱,于国不利,应当与楚国交战!文公这才坚定了决心。
子玉误把晋军礼让性的后撤误认为是害怕楚军,于是刚扎下营盘便派大夫斗勃向晋文公挑战道:“请和您的部下游戏一番,您可以扶着车前横木观赏,我也陪您来开开眼界。”文公让栾枝回答说:我们国君领教命令了。楚王的恩惠不敢忘记。既然得不到谅解,那就烦请大夫告诉你们的将帅:准备好你们的战车,敬奉你们的君命,明天早晨战场上相见!
晋楚城濮大战前,晋军方面,有战车700乘,兵员37000人,另有齐、秦、宋的支援。中军元帅是先轸,却溱为副;上军主将是狐毛,狐偃为副;下军主将是栾枝,胥臣为副。楚军方面,子玉为中军主帅,指挥警卫王室的西广、东宫及若教六卒,共有战车180乘;子上为右军主将,指挥陈、蔡两国的军队;子西为左军主将,指挥申、息两地的地方部队。晋军的上军对楚军的左军,下军对右军,临战,子玉夸下海口说:“今天晋军必定覆没!”
战斗开始,晋下军副将胥臣命令士卒把驾车的马蒙上虎皮,首先向楚右军发起攻击,陈、蔡的军队跟从楚军本是不得已,遭到这一突然进攻,立即溃不成军,蔡国公子印也被杀死,晋上军主将狐毛另设前军两队,出击楚军的逃兵,楚军右翼被彻底打垮;晋下军主将栾枝让士卒砍伐木柴拖在车后,扬起尘土,伪装败逃,楚中军立即发起追击,左军主将子西求胜心切,以为晋军主力溃逃,带部率先追赶,造成楚军侧翼空虚。晋见楚中计,元帅先轸率领中军精锐拦腰截击,狐毛、狐偃反转回头杀来,前后夹击,楚国的左军也被打垮。子玉见左右两军全垮,急忙收兵,这才不至于全军覆灭。
城濮之战以晋胜楚败而告结束。晋军在楚营内歇兵三天,班师而归。向周天子献上俘获的战车100辆和俘虏的步兵1000人。周天子设宴款待晋文公,命令大臣尹氏、王子虎和内史叔兴父用策书颁命晋文公为诸侯之长,并赏赐了文公许多财物。
楚成王本不愿与晋交战,听说子玉大败而回,就派人对子玉说:“你失败回来,有何面目见申、息两地的父老呢?”逼子玉自杀谢罪。但在打发走使者后,成王又后悔起来,忙派人收回成命,这时子玉在连谷(今河南西华县南一带)已自杀了。
城濮之战使晋国国威大振,以前与楚国结盟的国家纷纷投靠晋国。文公在践土(今河南原阳县西南)建造王宫,与诸侯会盟,占据了霸主的地位。而楚国北上的战略在这一战中受到沉重的打击,此后一段时间只好转向南方经营。
烛之武退秦师
周襄王二十年(前632年),晋楚城濮之后,晋国确立了中原霸主的地位。晋文公由此被列为春秋五霸之一。
但是,大国之间的争霸战争,给小国带来的却是灾难。特别是那些夹在晋、楚之间的诸侯国,更是疲于应付,左右为难。楚来则迎楚,晋来则迎晋,忍辱含垢,委屈求全。稍有不慎,便会遭到大国的攻伐。郑国便是其中之一。
周襄王二十年(前632年),当楚军挥师北上,与晋争霸时,郑国因楚近晋远,不得不委曲求全,而站在楚国一边。这一下惹恼了晋文公。城濮之战后的第二年(周襄王二十一年,前631年)夏天,晋文公纠合宋、齐、陈、蔡、秦等诸侯公于霍泉(在洛阳城中)。除了重申践土之盟外,便是商议讨伐郑国。最后,晋国和秦国决定联合出兵。周襄王二十二年(前630年)的春天,晋文公先派了一支小部队对郑国作试探性进攻,以观其可攻与否。到了九月,晋国和秦国便大举出兵,攻入郑国境内,包围了郑国的都城。晋文公攻郑的理由是:郑国君文公在自己流亡路过郑国时曾对自己无礼;后来又背晋助楚。入郑后,晋军大营驻扎在函陵(今河南新郑县北13里),秦军驻扎在汜南(今河南中牟县南,与函陵相距甚近)。晋军由晋文公亲自指挥,而秦军则由秦穆公自己指挥。
晋、秦军围郑后,郑都城中一片惶恐。郑国大夫佚之狐感到事态严重,便去找郑文公,对郑文公说:“国家的形势已经很危急了。您若能够让烛之武去见秦伯,和秦伯谈一下,秦军必然撤退。那样晋军也会撤退。”郑文公听从了佚之狐的建议,去找烛之武商议。烛之武听了郑文公的请求,便推辞说:“臣年轻的时候,尚且不如别人。如今臣已经老了,做不了什么事了。这个任务我完成不了。”郑文公知道烛之武在埋怨自己不早日任用他,只是到了危急的时候才想起他,便恳切地道歉说:“我不能早日任用你,让你发挥才能,如今事情紧急了才来求你,这是寡人的过错。但是,郑国如果亡了,对您也没有什么好处。”烛之武答应了。夜里,烛之武从城里缒墙而出,摸到秦军的军营里,见到了秦穆公。烛之武对秦穆公说:“秦军和晋军围郑,郑已知己之必亡。然而,如果郑国灭亡而对您有好处,那我们也愿意灭亡。越过别的诸侯国而以远地为己边邑,您知道那是非常困难的事情。干吗要灭亡郑国而让邻国增加力量呢?邻国实力增加了,您的力量可就削弱了。如果留着郑国而不灭亡它,让郑国为秦东道之主人,秦国外交之往来,郑国可以助其乏困,这对您也并无害处。而且,您也曾经有恩于晋国。晋惠公夷吾答应割给秦国焦(今河南三门峡西)、瑕(今河南灵宝东)二邑,可是早晨归国,晚夕即筑城以备秦,这是您所知道的。晋国的贪欲哪里有满足的时候?既然东侵郑国以开拓其封疆,又要放恣其心力而西拓其边界,如不损害秦国,其土地将何从而得?损害秦国而有利于晋国,唯君图之。”秦穆公听了烛之武的话,觉得很有道理,损害秦国而有利于晋国的事情,他自然不愿意做。因此,他单独和郑国签订了盟约,让杞子、逢孙、杨孙留下来帮助郑国戍守,便引军撤回秦国去了。
秦军不辞而别,突然撤走,使晋人十分恼怒。子犯向晋文公请求率军进攻秦军。晋文公说:“不行。如果不是他(指秦穆公)的帮助,我们不会有今天。得到别人的帮助却又去损害人家,这是不仁;失掉自己的同盟是不明智;攻秦为乱,和秦为整,以乱易整,不算什么英勇之举。我们还是撤回去吧。”于是,晋文公率晋军撤回了晋国,郑国终于转危为安。
烛之武的成功,在于巧妙地利用了秦、晋之间存在的内在矛盾,而对秦穆公晓以利害,因而使秦军撤走,从而孤立了晋军,使晋军也不得不退兵。
秦晋殽之战
周襄王二十二年(前630年),烛之武说退秦师后,秦、郑结盟,杞子、逢孙、杨孙等大夫带二千人马被派住郑国戍守。二年后,杞子从郑国派人向秦穆公报告说:他已经掌管了郑国都城北门的钥匙,如果秘密发兵前来,里应外合,郑国肯定会到手。秦穆公召集大臣商量出兵之事,年迈的蹇叔和百里奚都不赞同,认为军队劳苦跋涉去袭击远方的国家,将卒辛劳、精疲力尽,郑国又有防备。再说千里行军,谁人不知?劳苦而无所得,将士也不会满意。秦穆公不听蹇叔的劝告,召见百里奚的儿子孟明视和蹇叔的儿子西乞术、白乙丙三人为大将,率领大军从国都东门处出发。蹇叔哭着对孟明视说,我只能看见军队开出去,却看不到他们回来了!秦穆公派人对他说:你知道什么?如果你六七十岁死了,你坟上的树现在也该有两手合抱那么粗了?蹇叔的儿子参加了出征的队伍,蹇叔哭着送他说:“晋国必定在殽山(今河南济宁西北)一带阻击秦军。殽山有两座大的山陵,南面的山陵,是夏后皋的坟墓;北面的山陵,是周文王避过风雨的地方。你们必将死于两座山陵之间,我在那里为你们收尸吧!”
秦军向东进发。周襄王二十五年(前627年)春天,秦军经过周王都洛邑的北门,兵车的左右卫脱去头盔,下车步行,以表示对周王的敬意,但是随即就跳上车,战车有300多辆。周共王的玄孙王孙满年纪还小,看到秦军的这种举动,认为秦国的军队轻佻而无礼,必然打败仗。
秦军到达滑国(今河南巩县西北),遇上了准备到周王都贩牛的郑国商人弦高。弦高见秦军突然而来,郑国毫无准备,急中生计,自称是郑国派来的使臣,先致送四张熟牛皮,然后又奉送12头牛犒劳秦军,假称受国君的委托来犒赏秦军,对秦穆公说:敝国并不富厚,为了您的随从能够在这里生活方便,住下就提供一天的食物,离开就准备一夜的守卫。同时,派人火速向郑国报告。
郑穆公得到消息后,派人去馆舍探视杞子等人的动静,发现他们已经装束完毕,磨利兵器、喂饱战马了,于是派皇武子下令逐客。杞子逃跑到齐国,逢孙、杨孙二人逃到宋国。秦军得到报告,主将孟明视认为郑国已有准备,没有得到郑国的希望了。攻郑不能取胜,围郑又无后续,建议早日回军。因此,秦军回师,顺路灭掉滑国。
就在这时,晋文公刚刚去世,晋国大臣认为秦国此举严重威胁晋国的霸业。晋国大夫先轸认为机不可失,放走秦军要生后患,一定要阻止秦军。栾枝则认为,先君复国,靠得是秦国的支持,未及报恩就攻打人家,对不起死去的先君。先轸反驳说:秦国不因我们的丧事而悲伤,反而攻打我们的同姓国,这是秦国无礼。一旦放走敌人,几辈子要受祸患,我们为晋国子孙后代着想,这可以对去世的国君说!于是就发布命令,紧急动员姜戎的军队,晋襄公染黑丧服,领兵出征,梁弘驾御车,莱驹做保镖。
同年夏四月,晋军在殽山击败秦军,俘虏了孟明视,西乞术、白乙丙,胜利而回,然后身着黑色的丧服安葬了晋文公。晋文公的夫人(秦穆公的女儿、晋襄公的母亲)文嬴请求释放秦国的三位将帅,说是他们三人挑拨晋、秦两国国君的关系,如果父王(秦穆公)得到这三人,就是吃了他们的肉也不满足,何必屈尊晋君去惩罚他们!莫如让三人归秦接受刑戮,也使父王快意。于是,晋襄公就答应了她的请求。