二十八年春季,晉文公準(zhǔn)備攻打曹?chē)?guó),向衛(wèi)國(guó)借路。衛(wèi)國(guó)不答應(yīng)?;貋?lái),從南河渡過(guò)黃河,入侵曹?chē)?guó),攻打衛(wèi)國(guó)。正月初九日,占取了五鹿。二月,郤縠死。原軫率領(lǐng)中軍,胥臣輔助下軍,把原軫提升,是為了重視才德。晉文公和齊昭公在斂盂結(jié)盟。衛(wèi)成公請(qǐng)求參加盟約,晉國(guó)人不答應(yīng)。衛(wèi)成公想親附楚國(guó),國(guó)內(nèi)的人們不愿意,所以趕走了他們的國(guó)君,來(lái)討好晉國(guó)。衛(wèi)成公離開(kāi)國(guó)都住在襄牛。
公子買(mǎi)駐守在衛(wèi)國(guó),楚國(guó)人救援衛(wèi)國(guó),沒(méi)有得勝。魯僖公害怕晉國(guó),殺了公子買(mǎi)來(lái)討好晉國(guó)。騙楚國(guó)人說(shuō):“他駐守沒(méi)到期就想回來(lái),所以殺了他?!?/p>
晉文公發(fā)兵包圍曹?chē)?guó),攻城,戰(zhàn)死的人很多。曹軍把晉軍的尸體陳列在城上,晉文公很擔(dān)心。聽(tīng)了士兵們的主意,聲稱(chēng)“在曹?chē)?guó)人的墓地宿營(yíng)”。軍隊(duì)轉(zhuǎn)移。曹?chē)?guó)人恐懼,把他們得到的晉軍的尸體裝進(jìn)棺材運(yùn)出來(lái),晉軍由于曹軍恐懼而攻城。三月初八日,進(jìn)入曹?chē)?guó),責(zé)備曹?chē)?guó)不任用僖負(fù)羈,做官坐車(chē)的反倒有三百人,并且說(shuō)當(dāng)年觀看自己洗澡,現(xiàn)在罪有應(yīng)得。下令不許進(jìn)入僖負(fù)羈的家里,同時(shí)赦免他的族人,這是為了報(bào)答恩惠。魏犫、顛頡發(fā)怒說(shuō):“不替有功勞或者苦勞的人著想,還報(bào)答個(gè)什么恩惠?”放火燒了僖負(fù)羈的家。魏犫胸部受傷,晉文公想殺死他,但又愛(ài)惜他的才能,派人去慰問(wèn),同時(shí)觀察病情。如果傷勢(shì)很重,就準(zhǔn)備殺了他。魏犫捆緊胸膛出見(jiàn)使者,說(shuō):“由于國(guó)君的威靈,難道我敢圖安逸嗎!”說(shuō)著就向上跳了很多次,又向前跳了很多次。晉文公于是就饒恕了他,而殺死顛頡通報(bào)全軍,立舟之僑作為車(chē)右。
宋國(guó)派門(mén)尹般到晉軍中報(bào)告危急情況。晉文公說(shuō):“宋國(guó)來(lái)報(bào)告危急情況,不去救他就斷絕了交往,請(qǐng)求楚國(guó)解圍,他們又不答應(yīng)。我們想作戰(zhàn),齊國(guó)和秦國(guó)又不同意。怎么辦?”先軫說(shuō):“讓宋國(guó)丟開(kāi)我國(guó)而去給齊國(guó)、秦國(guó)贈(zèng)送財(cái)禮。假借他們兩國(guó)去請(qǐng)求楚國(guó)。我們逮住曹?chē)?guó)國(guó)君,把曹?chē)?guó)、衛(wèi)國(guó)的田地分給宋國(guó)。楚國(guó)喜歡曹?chē)?guó)、衛(wèi)國(guó),一定不答應(yīng)齊國(guó)和秦國(guó)的請(qǐng)求。齊國(guó)和秦國(guó)對(duì)宋國(guó)的財(cái)禮喜歡,而對(duì)楚國(guó)的固執(zhí)很生氣,能夠不打仗嗎?”晉文公很高興,拘捕了曹共公,把曹?chē)?guó)和衛(wèi)國(guó)的田地分給了宋國(guó)人。楚成王進(jìn)入申城并住下來(lái),讓申叔離開(kāi)穀地,讓子玉離開(kāi)宋國(guó),說(shuō):“不要去追逐晉國(guó)軍隊(duì)!晉文公在外邊,十九年了,而果然得到了晉國(guó)。險(xiǎn)阻艱難,都嘗過(guò)了;民情真假,也都知道了。上天給予他年壽,同時(shí)除去了他的禍害,上天所設(shè)置的,難道可以廢除嗎?《軍志》說(shuō):‘適可而止。’又說(shuō):‘知難而退。’又說(shuō):‘有德的人不能抵擋?!@三條記載,適用于晉國(guó)?!?/p>
子玉派遣伯棼向成王請(qǐng)戰(zhàn),說(shuō):“不敢說(shuō)一定有功勞,愿意借此堵塞奸邪小人的口?!背赏醢l(fā)怒,少給他軍隊(duì),只有西廣、東宮和若敖的一百八十輛戰(zhàn)車(chē)跟去。
子玉派宛春到晉軍中報(bào)告說(shuō):“請(qǐng)恢復(fù)衛(wèi)侯的君位,同時(shí)把土地退還曹?chē)?guó),我也解除對(duì)宋國(guó)的包圍?!弊臃刚f(shuō):“子玉無(wú)禮??!給君王的,只是解除對(duì)宋國(guó)的包圍一項(xiàng),而要求君王給出的,卻是復(fù)衛(wèi)封曹兩項(xiàng)。這次打仗的機(jī)會(huì)不可失掉了。”先軫說(shuō):“君王應(yīng)該答應(yīng)他的請(qǐng)求。安定別人叫做禮,楚國(guó)人一句話安定三國(guó),我們一句話而使它們滅亡。我們就無(wú)禮,拿什么來(lái)作戰(zhàn)呢?不答應(yīng)楚國(guó)的請(qǐng)求,這是拋棄宋國(guó);救援了又拋棄他,將對(duì)諸侯說(shuō)什么?楚國(guó)有三項(xiàng)恩惠,我們有三項(xiàng)怨仇,怨仇已經(jīng)太多了,準(zhǔn)備拿什么作戰(zhàn)?不如私下里答應(yīng)恢復(fù)曹?chē)?guó)和衛(wèi)國(guó)來(lái)離間他們,逮了宛春來(lái)激怒楚國(guó),等打起仗再說(shuō)。”晉文公很高興。于是把宛春囚禁在衛(wèi)國(guó),同時(shí)私下里允諾恢復(fù)曹、衛(wèi)。曹、衛(wèi)就與楚國(guó)斷絕邦交。
子玉發(fā)怒,追逐晉軍。晉軍撤退。軍吏說(shuō):“以國(guó)君而躲避臣下,這是恥辱;而且楚軍已經(jīng)疲勞不堪,為什么退走?”子犯說(shuō):“出兵作戰(zhàn),有理就氣壯,無(wú)理就氣衰,哪里在于在外邊時(shí)間的長(zhǎng)短呢?如果沒(méi)有楚國(guó)的恩惠,我們到不了這里。退三舍躲避他們,就是作為報(bào)答。背棄恩惠而說(shuō)話不算數(shù),要用這個(gè)來(lái)蔽護(hù)他們的敵人,我們?nèi)崩矶?guó)有理,加上他們的士氣一向飽滿,不能認(rèn)為是衰疲。我們退走而楚軍回去,我們還要求什么?如果他們不回去,國(guó)君退走,而臣下進(jìn)犯,他們就缺理了?!睍x軍退走三舍。楚國(guó)騎士要停下來(lái),子玉不同意。
夏季,四月初一日,晉文公、宋成公、齊國(guó)的國(guó)歸父、崔夭、秦國(guó)的小子慭駐在城催。楚軍背靠著險(xiǎn)要的地方扎營(yíng),晉文公擔(dān)心這件事。聽(tīng)到士兵念誦說(shuō):“休耕田里的綠草繁茂,丟開(kāi)舊草而對(duì)新的加以犁鋤?!睍x文公很疑惑。子犯說(shuō):“出戰(zhàn)吧!戰(zhàn)而得勝,一定得到諸侯;如果不勝,我國(guó)外有大河,內(nèi)有高山,一定沒(méi)有什么害處?!睍x文公說(shuō):“對(duì)楚國(guó)的恩惠怎么辦?”欒枝說(shuō):“漢水以北的姬姓諸國(guó),楚國(guó)都把它們吞并完了。想著小恩惠,而忘記大恥大辱,不如出戰(zhàn)?!睍x文公夢(mèng)中和楚王搏斗,楚王伏在自己身上咀嚼自己的腦漿,因而害怕。子犯說(shuō):“吉利。我得到上天,楚國(guó)伏罪,而且我們已經(jīng)安撫他們了?!?/p>
子玉派遣鬬勃向晉國(guó)挑戰(zhàn),說(shuō):“請(qǐng)和君王的斗士作一次角力游戲,君王靠在車(chē)橫板上觀看,得臣可以陪同君王一起觀看了。”晉文公派遣欒枝回答說(shuō):“我們國(guó)君知道您的意思了。楚君的恩惠,沒(méi)有敢忘記,所以待在這里。我們以為大夫已經(jīng)退兵了,臣下難道敢抵擋國(guó)君嗎?既然大夫不肯退兵,那就煩大夫?qū)F部將士們說(shuō):‘準(zhǔn)備好你們的戰(zhàn)車(chē),忠于你們的國(guó)事,明天早晨將再見(jiàn)面?!睍x國(guó)戰(zhàn)車(chē)七百輛,裝備齊全。晉文公登上有莘的廢城觀看軍容,說(shuō):“年少的和年長(zhǎng)的,排列有序,合于禮,可以使用了?!本兔羁撤ド缴系臉?shù)木,以增加武器。
初二日,晉軍在莘北擺開(kāi)陣勢(shì),胥臣讓下軍分別抵擋陳、蔡軍隊(duì)。子玉用若敖的一百八十乘率領(lǐng)中軍,說(shuō):“今天一定滅掉晉國(guó)了?!弊游髀暑I(lǐng)左軍,子上率領(lǐng)右軍。胥臣把馬蒙上老虎皮,先攻陳、蔡兩軍。陳、蔡兩軍奔逃,楚軍的右翼部隊(duì)潰散。狐毛派出前軍兩隊(duì)擊退楚軍的潰兵。欒枝讓車(chē)子拖著木柴假裝逃走,楚軍追擊,原軫、郤溱率領(lǐng)中軍的公族攔腰襲擊。狐毛、狐偃率領(lǐng)上軍夾攻子西,楚國(guó)的左翼部隊(duì)潰散。楚軍大敗。子玉及時(shí)下令收兵,得以不敗。
晉軍休整三天,吃楚軍留下的糧食,到初六日起程回國(guó)。二十七日,到達(dá)衡雍,為天子在踐土建造了一座王宮。
這一戰(zhàn)役之前的三個(gè)月,鄭文公派軍隊(duì)到楚國(guó)助戰(zhàn),因?yàn)槌娨呀?jīng)失敗而害怕了,派遣子人九和晉國(guó)講和。晉國(guó)的欒枝進(jìn)入鄭國(guó)和鄭文公訂立盟約。
五月初九日,晉文公和鄭文公在衡雍結(jié)盟。初十日,把楚國(guó)的戰(zhàn)俘獻(xiàn)給周襄王:駟馬披甲的戰(zhàn)車(chē)一百輛,步兵一千人。鄭文公作為相禮,用的是周平王時(shí)的禮儀。十二日,周襄王設(shè)享禮用甜酒招待晉文公,又允許他向自己回敬酒。周襄王命令尹氏和王子虎、內(nèi)史叔興父用策書(shū)任命晉文公為諸侯的領(lǐng)袖,賜給他大輅車(chē)、戎輅車(chē)以及相應(yīng)的服裝儀仗,紅色的弓一把、紅色的箭一百枝,黑色的弓十把和箭一千枝,黑黍加香草釀造的酒一卣,勇士三百人,說(shuō):“天子對(duì)叔父說(shuō):‘恭敬地服從天子的命令,以安撫四方諸侯,懲治王朝的邪惡?!睍x文公辭謝三次,然后接受命令,說(shuō):“重耳謹(jǐn)再拜叩頭,接受和宣揚(yáng)天子的重大賞賜和命令。”接受了策書(shū)就離開(kāi)成周。從進(jìn)入成周到離開(kāi),三次朝見(jiàn)周王。
衛(wèi)成公聽(tīng)說(shuō)楚軍失敗,害怕,逃亡到楚國(guó),又到了陳國(guó),派遣元咺奉事叔武去接受盟約。二十六日,王子虎和諸侯在天子的庭院里盟誓,約定說(shuō):“全部輔助王室,不要互相傷害!誰(shuí)要違背盟約,就要受到神的誅殺,使他軍隊(duì)顛覆,不能享有國(guó)家,直到你的玄孫,不論老小?!本诱J(rèn)為這次結(jié)盟是守信用的,認(rèn)為晉國(guó)在這次戰(zhàn)役中能夠用道德來(lái)進(jìn)攻。
當(dāng)初,楚國(guó)的子玉自己制作了鑲玉的馬冠馬鞅,還沒(méi)有使用。作戰(zhàn)之前,夢(mèng)見(jiàn)黃河河神對(duì)他說(shuō):“送給我,我賜給你孟諸的水草地?!弊佑駴](méi)有送去。他兒子大心和子西派榮黃勸諫,子玉不聽(tīng)。榮黃說(shuō):“死而有利于國(guó)家,尚且還要去做,何況是美玉呢?和國(guó)家比起來(lái)這不過(guò)是糞土罷了。如果可以使軍隊(duì)成功,有什么可惜的?”子玉仍然不肯。榮黃出來(lái)告訴兩個(gè)人說(shuō):“不是神明讓令尹失敗,令尹不以百姓的事情為重,實(shí)在是自取失敗啊?!弊佑袷≈螅赏跖墒钩紝?duì)子玉說(shuō):“申、息的子弟大多傷亡了,大夫如果回來(lái),怎么向申、息兩地的父老交代呢?”子西、大心對(duì)使臣說(shuō):“子玉本來(lái)要自殺的,我們兩個(gè)阻攔他說(shuō):‘不要自殺,國(guó)君還準(zhǔn)備殺你呢?!钡竭_(dá)連穀,子玉就自殺了。
晉文公聽(tīng)說(shuō)子玉自殺的消息以后,喜形于色,說(shuō):“沒(méi)有人再來(lái)為害于我了。蔿呂臣做令尹,不過(guò)是維護(hù)自己罷了,并不是為了百姓?!?/p>
有人在衛(wèi)成公面前毀謗元咺說(shuō):“他已立了叔武做國(guó)君了?!痹獑I的兒子角跟隨衛(wèi)成公,衛(wèi)成公派人殺了他。元咺并沒(méi)有因此而廢棄衛(wèi)成公的命令,還是奉事叔武回國(guó)攝政。六月,晉國(guó)人聽(tīng)任衛(wèi)侯回國(guó)。甯武子和衛(wèi)國(guó)官吏、大族等在宛濮結(jié)盟,說(shuō):“上天降禍衛(wèi)國(guó),君臣不和諧,所以才遭到這樣的憂患?,F(xiàn)在天意保佑我國(guó),讓大家放棄成見(jiàn)而互相聽(tīng)從。沒(méi)有留下的人,誰(shuí)來(lái)守衛(wèi)國(guó)家?沒(méi)有跟隨君王的人,誰(shuí)去保衛(wèi)那些牧牛養(yǎng)馬的人?由于不和協(xié),因此乞求在大神面前明白宣誓,以求天意保佑。從今天訂立盟約之后,在外的人不要仗恃自己的功勞,留下的人不要害怕有罪。誰(shuí)要違背盟約,禍害就降臨到他頭上。神明和先君在上,加以懲罰誅殺?!眹?guó)內(nèi)的人們知道了這盟約,才沒(méi)有二心。
衛(wèi)成公比約定的日期先進(jìn)入衛(wèi)國(guó),甯武子在衛(wèi)成公之前,長(zhǎng)牂把守城門(mén),以為他是國(guó)君的使者,和他同乘一輛車(chē)進(jìn)入。公子歂犬、華仲作為前驅(qū),叔武正要洗發(fā),聽(tīng)說(shuō)國(guó)君來(lái)到,很高興,用手抓著頭發(fā)跑出來(lái),前驅(qū)卻把他射死了。衛(wèi)成公知道他沒(méi)有罪,把頭枕在尸體的大腿上而哭他。歂犬逃跑,衛(wèi)成公派人把他殺死了。元咺逃亡到晉國(guó)。
在城濮的戰(zhàn)役中,晉軍的中軍在沼澤地遇到大風(fēng),丟掉了前軍左邊的大旗。祁瞞犯了軍令,司馬把他殺了,并通報(bào)諸侯,派茅茷代替他。軍隊(duì)回來(lái),六月十六日,渡過(guò)黃河,舟之僑擅自先行回國(guó),士會(huì)代理車(chē)右。秋季,七月某一天,勝利歸來(lái),高唱?jiǎng)P歌進(jìn)入晉國(guó),在太廟報(bào)告俘獲和殺死敵人的數(shù)字,飲酒犒賞,召集諸侯會(huì)盟和攻打有二心的國(guó)家。殺舟之僑并通報(bào)全國(guó),百姓因此而大為順?lè)?。君子認(rèn)為:“晉文公能夠嚴(yán)明刑罰,殺了顛頡、祁瞞、舟之僑三個(gè)罪人而百姓順?lè)??!?u>詩(shī)》說(shuō):‘施惠于中原國(guó)家,安定四方的諸侯’,說(shuō)的就是沒(méi)有失去公正的賞賜和刑罰?!?/p>
冬季,僖公和晉文公、齊昭公、宋成公、蔡莊公、鄭文公、陳子、莒子、邾子、秦同人在溫地會(huì)見(jiàn),商量出兵攻打不順?lè)膰?guó)家。
衛(wèi)成公和元咺爭(zhēng)訟,甯武子作為衛(wèi)成公的訴訟人,鍼莊子作為衛(wèi)成公的代理人,士榮作為衛(wèi)成公的答辯人。衛(wèi)成公沒(méi)有勝訴。作為諸侯領(lǐng)袖的晉國(guó)殺了士榮,砍了鍼莊子的腳,認(rèn)為甯武子忠誠(chéng)而赦免了他。逮捕衛(wèi)成公,把他送到京師,關(guān)在牢房里。甯武子負(fù)責(zé)給衛(wèi)成公送衣食。元咺回到衛(wèi)國(guó),立公子瑕為國(guó)君。
這次溫地的會(huì)盟,晉文公召請(qǐng)周襄王前來(lái),并且?guī)ьI(lǐng)諸侯朝見(jiàn)他,又讓周襄王打獵??鬃诱f(shuō):“以臣下而召請(qǐng)君主,是不能作為榜樣的?!彼浴洞呵铩酚涊d說(shuō)“天王狩于河陽(yáng)”,天下本都是周王朝的地方,而這里卻不是周襄王的地方了,而且是為了表明晉國(guó)的功德而避諱的說(shuō)法。
十月初七日,僖公到周襄王的住處朝覲。
十一月十二日,諸侯包圍許國(guó)。
晉文公有重病,曹共公的侍從侯獳賄賂晉文公的筮史,讓他把得病的原因說(shuō)成是由于滅了曹?chē)?guó)。他就對(duì)晉文公說(shuō):“齊桓公主持會(huì)盟而封異姓的國(guó)家,現(xiàn)在君王主持會(huì)盟而滅同姓的國(guó)家。曹?chē)?guó)的叔振鐸,是文王的兒子;先君唐叔,是武王的兒子。而且會(huì)合諸侯而滅掉兄弟之國(guó),這是不符合禮儀的;曹?chē)?guó)和衛(wèi)國(guó)一樣得到君王的諾言,但是不能一同復(fù)國(guó),這是不講信用的;罪過(guò)相同而懲罰不同,這是不符合刑律的。禮儀用來(lái)推動(dòng)道義,信用用來(lái)保護(hù)禮儀,刑律用來(lái)糾正邪惡。丟開(kāi)了這三項(xiàng),君王準(zhǔn)備怎么辦?”晉文公很高興,恢復(fù)了曹共公的君位,曹共公就在許國(guó)和諸侯會(huì)盟。
晉文公建立三個(gè)步兵師來(lái)抵抗狄人,荀林父將領(lǐng)中行,屠擊將領(lǐng)右行,先蔑將領(lǐng)左行。