城濮之战是春秋时期发生的一场影响了中国历史进程的战争,这场战争牵扯了当时几乎所有的诸侯。但这场战争由于《左传》记载参杂了并非史实文字记载,以及后人误读、地望判断错误等原因,掩盖了战争发生的真实性质、背景、过程,使这一重要的历史事件在后来人们对春秋历史的认识也产生了偏差。本文作者不揣谫陋,希望能够通过以下分析力争廓清这一史实。
一、城濮之战发生的背景
研究城濮之战,必须从鲁僖公二十六年齐伐鲁说起。
鲁僖公二十五年十二月癸亥,鲁与卫、莒盟于洮。未一月,二十六年正月己未,为寻洮之盟,三国再会于向。齐以此为由,随即向鲁发动讨伐战争。这是这年齐第一次伐鲁,从《春秋》所记“齐人侵我西鄙,公追齐师,至酅,弗及”分析,齐对鲁的讨伐并未取得预期的效果,并且被鲁追击,很快撤退。
夏,齐再兴师伐鲁。这一次讨伐明显使鲁感受到压力,鲁派出使臣展喜出面斡旋,并且卫也兴师伐齐,齐退兵。
在这里,我们不分析齐鲁交兵的具体动机和过程,以及齐对鲁两次讨伐行动的具体结果,应该予以关注的是,鲁因此采取了一个关键的行为:向楚乞师。
需要明确地指出,春秋时期的楚国与其它中国诸侯有着本质的区别。春秋时期,直到战国前期,在《孟子》中,孟子还大量使用“中国”以区别蛮夷戎狄。中国与蛮夷戎狄的关系,相信阅读此文诸君是会有清晰认识,在此不作过多分析。
西周初年,周王朝似乎并没有承认楚作为国家形式的存在。应该是在周公归政成王之后,楚才得到周王室的承认。尽管其始受封国君熊绎“与鲁公伯禽、卫康叔子牟、晋侯燮、齐太公子吕伋俱事成王”,①但楚国并不属于中国诸侯序列,而是归入蛮夷。《谷梁传·庄公十年》:“荆者,楚也。何谓之荆?狄之也。何为狄之?圣人立,必后至;天子弱,必先叛。故曰:荆,狄之也。”《国语·晋语八》记晋叔向语:“昔成王盟诸侯于岐阳,楚为荆蛮,置茅蕝,设望表,与鲜卑守燎,故不与盟。”
在经过两千多年民族融合后的今天,荆楚无论是否曾经属于蛮夷戎狄序列,都是中华民族形成的基本成分。但在两千多年前的春秋时期,楚是与“中国诸侯”身份不同的“荆蛮”。在城濮之战结束后的践土之会上,晋“献楚俘于王”,楚的蛮狄身份是确定的,因为只有蛮夷戎狄之俘才可献于天子,否则,天子是不接受的。《左传》对此有明确的记载:
(鲁庄公)三十一年夏六月,齐侯来献戎捷,非礼也。凡诸侯有四夷之功,则献于王,王以警于夷。中国则否。诸侯不相遗俘。
鲁成公二年,晋侯使巩朔献齐捷于周,王弗见,使单襄公辞焉,曰:“蛮夷戎狄,不式王命,淫湎毁常,王命伐之,则有献捷,王亲受而劳之,所以惩不敬,劝有功也。兄弟甥舅,侵败王略,王命伐之,告事而已,不献其功,所以敬亲昵,禁淫慝也。”
《史记·楚世家》对楚蛮狄身份也是肯定的,并且清楚地指明了楚归于“南方夷越”序列,而非“中国”诸侯:
成王恽元年,初即位,布德施惠,结旧好於诸侯。使人献天子,天子赐胙,曰:“镇尔南方夷越之乱,无侵中国。”
当周夷王之时,王室微,诸侯或不朝,相伐。熊渠甚得江汉间民和,乃兴兵伐庸、杨粤,至于鄂。熊渠曰:‘我蛮夷也,不与中国之号谥。’乃立其长子康为句亶王,中子红为鄂王,少子执疵为越章王,皆在江上楚蛮之地。
周王室对楚国崛起的警惕来源已久,周昭王时期,至少对楚国进行过三次征讨。“周昭王累累南征,当然不是为了贪求什么,而是由于楚国的勃兴,引起周天子的恐慌,不得不领兵亲征,企图遏制楚国的发展。”②周王室对楚可能对“中国”构成威胁有清楚的认识并有所警惕。西周后期,在楚通向中原的江淮之间,“西自汉水以东,南自汉水以北,东至于光、黄,北至于淮汝”,③分封姬姓子弟,作为中国与荆蛮之间的藩屏。但随着周王室的衰微和中国诸侯之间不断的侵伐,这些汉阳诸姬逐渐被楚吞灭,中国诸侯直接暴露在楚面前。《左传·鲁桓公二年》,“蔡侯、郑伯会于邓,始惧楚也。”六年以后,楚武王三十七年,即鲁桓公八年,楚再次称王。从此以后,楚已经是中国诸侯共同的敌人。
我们必须清楚一个前提:中央集权制中国是秦统一之后建立起来的。先秦时期,夏、商两朝是纯粹的邦联制,最强大、能够统治其它邦国的国家称为“中国”。所谓中国,并不是统治者以为自己所在是世界的中心,而是“以我为中”的方位判断。天子所在即中,“中国”即天子之国。其余的则称为“四方”。周初,小邦周取代大邑商,为了强化新建立的周王朝政权统治,采取了一个重要的措施:分封诸侯。这些周王朝分封诸侯的紧密层,包括重新获封的舜后陈、夏后杞,以及奉殷祀的宋,功臣姻亲的齐,姬姓封国等,统称为“中国”,以区别于蛮夷戎狄“四方”。周王室是包括“四方”及中国诸侯在内的共主,同时也是邦国之一。
春秋时期的周王室,名义上还是天下共主,但其实力恐怕仅及三流诸侯,不但没有力量控制中国诸侯之间的相互征伐,而且也已经无力抵制强大起来的楚国对中国的侵略。在汉阳诸姬被楚吞灭之后,蔡、郑等明显地感觉到首当其冲的严峻形势,但仅凭自身力量要担当阻击楚向中原侵略的重任,实在是勉为其难。特别是在中国诸侯各自为生存而不断征战、没有统一意志的形势下,既要保持国家完整,又要防备不被其他诸侯吞并,还要抵抗侵略,必须做出选择。
鲁僖公四年,齐桓公会诸侯伐楚,是中国诸侯联合抵抗楚对中国侵略的开始。西周初年采取分封诸侯“以藩屏周”的战略在此开始得以充分的显现:如欲改朝换代,用“殷革夏命”或“周革殷命”这种单纯的靠推翻王室方式已经不能实现,必须在征服大多数诸侯的基础上,才可能建立起稳固的政权。所以有后来王孙满对楚庄王说“周德虽衰,天命未改”的话。齐桓公封伯成为诸侯霸主,是他能够团结和带领中国诸侯抵御外敌对中国侵伐的功劳和作用,而不是因为其在中国诸侯之间逞强。
鲁乞师于楚无异于引狼入室。
东门襄仲、臧文仲如楚乞师,臧孙见子玉而道之伐齐、宋,以其不臣也。……。宋以其善于晋侯也,叛楚即晋。冬,楚令尹子玉、司马子西帅师伐宋,围缗。公以楚师伐齐,取谷。《左传鲁僖公二十六年》
从这段文字中我们可以清楚地看出,楚师伐宋围缗与鲁以楚师伐齐是一体的,楚师围缗是配合伐齐楚师的军事行为。缗在宋、鲁之间。④齐与宋的关系是战略同盟,此时的齐君是宋所立之孝公昭。齐受到侵伐,宋一定会出师相救。鲁处于齐、宋之间,如果宋发兵攻鲁救齐,鲁将两面受敌,“以楚师伐齐”必然无功。为防备鲁在“以楚师伐齐”时宋为救齐而向鲁兴兵,在宋、鲁之间布置军事力量防止宋向鲁发动进攻,是鲁、楚的必然选择。从缗所处的地理位置可以清楚地看出楚围缗的目的。所谓“宋以其善于晋侯也,叛楚即晋”,这是《左传》作者为楚师围缗另外设计的理由,或者是鲁召楚师伐齐捎带上宋的借口。
鲁以楚师伐齐取得了成功:“取谷。”鲁并未将谷纳入自己的版图,而是“置桓公子雍于谷,易牙奉之以为鲁援。”但由“楚申公叔侯戍之”,为后来的城濮之战埋下了伏笔。
此时,在楚通向中国的前面,汉阳诸姬以及申、息等已经灭亡殆尽,并入楚的版图。许名存实亡,蔡、陈沦为附庸,郑为自存,无奈已经臣服。鲁僖公十五年,“楚败徐于娄林”,已经有通过东路北上对中国采取包围之势。鲁僖公十六年十二月,以齐为首的诸侯“会于淮,……。城鄫”,即是针对楚的企图采取的应对措施。然而,在管仲和齐桓公相继去世之后,中国诸侯失去了领袖。为了生存,各自采取了认为可以喘息的行为。
宋襄公没有能承担起作为中国诸侯领袖的重任。鲁僖公二十二年宋、楚泓之战,宋师不但完败,而且宋襄公本人也受伤,不久即含恨去世。宋襄公泓之战失败的原因,《左传》所记过于浅薄。宋为亡殷后嗣的特殊背景决定了宋襄公不能成为诸侯领袖:既有心理因素,更多是政治因素限制,正如大司马公孙固(《宋世家》以为子鱼)所谓:“天之弃商久矣,君将兴之,弗可赦也已。”不论是宋襄公还是任何其他宋君,都不能成为诸侯可以放心承认的霸主。大敌当前,团结和带领诸侯抵御荆蛮入侵,宋襄公希望成为这个领袖人物,既得不到诸侯的认可,又得不到国内势力的支持,失败,是包括宋国国内势力和中国诸侯甚至周王室在内的共同心理,而打击欲带领中国诸侯与楚为敌者是楚的不二选择。泓之战,从酝酿的开始就决定了失败是必然的结果。楚欲对中原有所作为,彻底征服宋已经是摆在面前的首要任务。鲁借楚师伐齐给楚提供了灭宋的机会和借口。在鲁“以楚师伐齐,取谷”后次年,即鲁僖公二十七年“冬,楚人、陈侯、蔡侯、郑伯、许男围宋。”
宋公孙固如晋告急。
二、晋军兴师的动机
孟子对齐宣王说:“仲尼之徒无道桓、文之事”。董仲舒的解释是“为其先诈力而后仁义”。晋重耳集团归国夺取政权初期,晋国国内局势并不稳定,民心并不归附。虽然以纳襄王获得了周王室承认,但这些都是在原有政治和军事基础上的行动,还没有完成对晋国政权的控制。这在《左传》中有清楚的记载:
晋侯始入而教其民,二年,欲用之。子犯曰:“民未知义,未安其居。”于是乎出定襄王,入务利民,民怀生矣,将用之。子犯曰:“民未知信,未宣其用。”于是乎伐原以示之信。民易资者不求丰焉,明征其辞。公曰:“可矣乎?”子犯曰:“民未知礼,未生其共。”于是乎大蒐以示之礼,作执秩以正其官,民听不惑而后用之。
此时的晋国统治者迫切需要一次大型的军事行动,以完成夺位后政权的更迭,即通过军事演习(大蒐)完成对军事将领的调整,通过实战以确立其军事、政治地位。
这是晋兴师的内在原因。
如果仔细研读当时诸侯实力,齐已不复桓公时国际地位和实力,燕、秦绝远,周王室自身难保,除晋以外,已没有可以与楚对抗的政治势力。晋出师救宋是那个时代赋予晋必须承担的历史责任。重耳政治集团也需要获得国际上的政治地位,通过对国际局势的分析,可以得出清晰的结论:如果坐视宋被楚灭,齐难免,晋亦不能独存。
晋文公重耳的政治集团在对国内、国际局势仔细研判之后,得出的结论是必须出师救宋。但对直接与楚军交战并没有一定取胜的把握,只能通过“攻其必救”方针,以侵曹伐卫的方式迫使楚从宋撤围。避免与楚直接交战,因为一旦直接交战失败,后果是不堪设想的。
三、晋军灭曹前的进攻路线及其过程
晋军伐曹的进军路线,按《左传》的记载:“借道于卫,卫人弗许。还,自南河济。”比较通行的说法是由“汲郡南”、或者“棘津”渡河。⑤但这个说法经不起仔细的推敲,孙铁林、屈军卫《城濮之战晋国进军路线考辩》⑥对此作了比较详细的分析,认为这“是无中生有、杜撰出来的行军路线。”的确,这纯粹是臆测。晋军如果由汲郡南或者棘津渡河,在渡河前不经过卫地,只能是从轵关陉、太行陉或者白陉出太行。此三陉最靠北的白陉出口地理位置也至少与棘津平行。晋军是在卫拒绝借道后,“还”,然后“自南河渡”,说明此前晋军借道的位置比渡河位置还靠北。晋军是为伐曹而向卫借道。曹都陶丘(今山东定陶)在汲郡、棘津东偏南位置,晋军没有理由在出太行后向北借道于卫,渡河后再向东南行军。此其一。其二,晋军在渡河之后,首先攻取了卫邑五鹿,显然晋军不能从“汲郡南”或者“棘津”渡河后自南向北穿越卫境夺取卫国北部边邑五鹿。
正如孙、屈文所说,这“是无中生有、杜撰出来的行军路线”。但其在向卫国借道遭拒后,“还”,是由卫国南境返回到“晋国本土,乃至晋国国都”,再由沁县东的滏口陉东出,“自南河渡”或者“自河南渡”,同样也只能是无中生有和杜撰。让七百辆战车、数万人的晋军严冬季节在太行山的崇山峻岭中用几天时间穿行数千里,无论如何都是不可想象的。
在否定了晋军由轵关陉、太行陉或者白陉出太行的可能性之后,军都陉、蒲阴陉、飞狐陉过于靠北,不可能成为晋军出太行的选择。晋军从一开始就是由井陉或者滏口陉出太行,出太行后向南很快即到达卫国的北部边境。由此向曹进军,必须通过卫的国境,所以要向卫借道。晋的既定方针是伐曹、卫以免齐、宋,如果卫同意借道,那么一定是晋献公“假途伐虢”伎俩的翻版,卫成公不能不有所戒备。卫拒绝借道是在晋军决策者的意料之中,这是晋向卫发动进攻的当然借口。“还”,晋军只是在卫北境折而向北,再向东,然后渡河。注意:渡河之前,晋军仍是在晋国的土地上行动,五鹿以北的沙鹿至少在鲁僖公十四年之前即是晋的土地。⑦
以晋军当时的实力,攻取五鹿并不需要太大的动静,所以,《左传》仅有“正月戊申,取五鹿。”这七个字。在取五鹿之后、围曹之前,《左传》作了如下叙述:
二月,晋郤縠卒。原轸将中军,胥臣佐下军,上德也。晋侯、齐侯盟于敛盂。卫侯请盟,晋人弗许。卫侯欲与楚,国人不欲,故出其君以说于晋。卫侯出居于襄牛。
公子买戍卫,楚人救卫,不克。公惧于晋,杀子丛以说焉。谓楚人曰:“不卒戍也。”
在这不足百字的文字中,其所包涵的信息量是巨大的:
(一)晋军遭遇中军将变故。晋中军将是三军元帅。就任晋军元帅仅一两个月的郤縠病逝,下军佐先轸超越郤溱、狐偃、狐毛、栾枝而成为晋军元帅。其过程不可臆测,但必然是一个角逐的过程;
(二)与齐达成战略同盟。齐桓公此前是联合诸侯御楚之伯(霸主)。在齐桓公去世之后,诸侯失去了领袖,在面临被楚各个击破的局面下,宋襄公希望能团结诸侯继续联合抗楚,但由于宋是被周推翻的天子之后,不仅不受诸侯信任,在宋国国内也得不到其它政治势力的支持,很快失败。鲁为报复齐国,引狼入室,“以楚师”攻取了齐的谷,虽“置桓公子雍于谷,易牙奉之以为鲁援”,但由“楚申公叔侯戍之”,成了楚的军事基地。齐受楚害。晋在攻取五鹿之后,联合齐将戍谷逼齐之楚军事力量驱逐,即“出谷戍”,是晋军决策者的必然选择。“晋侯、齐侯盟于敛盂。”齐、晋结成战略同盟。
(三)控制卫的行政权力,使卫成为晋今后军事行动的后方。在是否与楚的态度上,卫国内政治势力与卫成公的决策是有分歧的。晋拒绝卫的请盟,在于争取卫国抗楚势力的支持,迫使卫成公失去政治权力,晋可以因此完全控制卫国使之成为晋军向前进攻的坚强后方。这对晋军今后的军事行动有着至关重要的关系——晋军不但可以在卫的土地上自由地调动,而且给养和后勤能够得到最有效的保障。
(四)瓦解鲁、楚联盟,使鲁回归中国阵营。
冬,楚人、陈侯、蔡侯、郑伯、许男围宋。十有二月甲戌,公会诸侯,盟于宋。(鲁僖公二十七年《春秋》)
楚与陈、蔡、郑、许诸侯围宋是鲁乞师于楚导致的,鲁僖公到宋与以楚为首的诸侯会盟,必然与围宋有关。但在围宋的军事行动中,没有鲁,也没有已经服楚的曹、卫,这是不可能的。
从地图上我们可以清楚地看出,在宋的周围,当楚的进攻方向,除参与围宋的陈、蔡、郑、许之外,所有大小诸侯,都已灭于楚,或者彻底成为楚的附庸。西、南、东已没有宋可以寄托救援希望的任何独立的政治势力或者军事势力。秦、燕绝远,能与楚抗衡的只有齐、晋。而鲁、卫、曹则正处在齐、晋救宋进军的当面。在楚围宋的过程中,鲁、卫、曹需要承担阻击可能来自齐、晋救援的进攻。
此时的卫,其经济、军事实力都不足以抵御来自齐、晋进攻。特别是在卫国国内,卫成公的政治立场并不坚定,还有相当大的拒绝与楚的政治势力。对此,楚应该是有明确的判断。因此,鲁公子买戍卫的决定来自于楚而不是鲁本身。公子买戍卫的根本目的在于加强和监督卫抵御齐、晋救宋的军事行动,而不仅是为卫自身的安全出发。
鲁杀子丛(公子买)有取悦于晋的因素,更多是对自己借楚师报复齐行为造成如此严重后果反思后的弥补。鲁的这一行动应该是受到了充分的肯定,因为这一行动是整个战役的重要转折点。从各种史料记载分析,在城濮之战前,晋军与楚军并没有任何形式的直接交战,《左传》“楚人救卫,不克。”和《史记·晋世家》“楚救卫,不卒。”说明,在卫受到晋军攻击时,楚曾有救卫的决策,正因为鲁杀子丛(公子买)且告楚“不卒戍也”,迫使楚取消了救卫行动。如果没有鲁的这个行动,使楚救卫成行,此时晋军与楚军决战,很可能就没有后来晋军城濮之战的胜利。
四、在晋围曹前楚成王即已率领部分楚军和郑、许军队由宋向申回撤
晋做出侵曹伐卫决策是以“若伐曹、卫,楚必救之,则齐、宋免矣”为前提,所以,晋伐曹是以解宋围为目的,而不是以灭曹为目的。熟悉军事者都明白一个道理,“攻其必救”的核心在于必须使施救者认为其救援行为能够达到救援的目的。如果在救援行动开始之前,或者在救援行动实施过程中,救援目标就已经消失,救援行为失去意义,那么,救援行动就会终止。所以,目标对象不能在施救者做出救援行动前就已经被攻击者消灭,因为一旦攻击对象消灭,也就失去了救援的意义。晋军迅速地攻陷曹,并没有希望通过楚军救曹达到释宋围的目的,如果晋军希望通过伐曹救宋,则绝对不能迅速地灭曹,使楚救曹失去目标。
三月丙午,(晋军)入曹。
在攻陷五鹿之后的二月,发生了上述一系列的事情,晋军在三月丙午(八日)即入曹,说明围曹并陷曹是在很短时间内完成的,攻曹已经不是为了吸引楚军救曹,而是对其投献楚蛮行为给予惩罚。限于篇幅,对晋入曹后《左传》记载文字不作过多的分析,只对其中“且曰献状”稍作解释。“献状”即是曹投献于楚的政治态度。鲁对此付出杀子丛(公子买)的代价,卫成公,陈、蔡、郑、许今后都将为此承担责任,晋以其投献于楚作为其征伐的理由,比“以其不用僖负羁而乘轩者三百人也”更有说法力。如果清楚春秋时期楚与中国关系的性质,其“献状”所代表的涵义是确定、清晰的。
晋军之所以采取如此的军事行动,是因为大部分楚军及参与围宋的郑、许军队之前就已经在楚成王的率领下,从围宋前线向申移动。《左传》作者的以下文字是非史实性的:
宋人使门尹般如晋师告急。公曰:“宋人告急,舍之则绝,告楚不许。我欲战矣,齐、秦未可,若之何?”先轸曰:“使宋舍我而赂齐、秦,藉之告楚。我执曹君而分曹、卫之田以赐宋人。楚爱曹、卫,必不许也。喜赂怒顽,能无战乎?”公说,执曹伯,分曹、卫之田以畀宋人。
楚子入居于申,使申叔去谷,使子玉去宋,曰:“无从晋师。晋侯在外十九年矣,而果得晋国。险阻艰难,备尝之矣;民之情伪,尽知之矣。天假之年,而除其害。天之所置,其可废乎?《军志》曰:‘允当则归。’又曰:‘知难而退。’又曰:‘有德不可敌。’此三志者,晋之谓矣。”
子玉使伯棼请战,曰:“非敢必有功也,愿以间执谗慝之口。”王怒,少与之师,唯西广、东宫与若敖之六卒实从之。
这是《左传》在城濮之战发生前的文字记载,如果以文学的角度看,似乎无可挑剔。但若以史料文字分析,则漏洞百出。
(一)依以上文字分析,“楚成王乃引兵归”(《晋世家》)是“执曹伯,分曹、卫之田以畀宋人”的结果。这个理由莫名其妙!楚师围宋,宋危在旦夕,数次向晋求救。晋攻曹时,楚不救,如今晋已灭曹,曹灭国已经成为事实,“执曹伯”如何能吓退楚成王?“分曹、卫之田以畀宋人”的理由则更为荒唐:如果宋被楚攻陷,宋要曹、卫之田何用?楚成王长了怎样的脑袋,要为宋受或者不受曹、卫之田而班师?
(二)申是楚地,是有史可征的楚最早两个县之一。申在今河南南阳附近,距离宋都商丘直线距离达到三百公里,行军路程至少应该在九百里以上。如果以上文字作为史实成立,那么,楚成王由围宋前线撤退到申——由申向子玉和申叔下达“去谷”、“去宋”命令到达宋都——“子玉使伯棼请战”由宋到申——“王怒,少与之师,唯西广、东宫与若敖之六卒实从之”命令由申到达子玉围宋前线——子玉使宛春告于晋师,晋拘宛春于卫,曹、卫告绝于楚——子玉怒,率领“西广、东宫与若敖之六卒”以及陈、蔡军队“从晋师”由宋都商丘移动到城濮,这个过程需要多长时间?晋军是在三月丙午入曹,距城濮之战发生的四月己巳,中间只有二十一天时间,如果这一切是实际曾经发生的史实,无论如何都是不能成立的。
(三)《春秋》“楚人、陈侯、蔡侯、郑伯、许男围宋”说明郑伯及其军队是随楚成王一起在围宋的前线,《左传》后文“乡役之三月,郑伯如楚致其师。”郑文公不能自己带领着郑国的军队自行从围宋前线如楚,必须是随楚成王带领的部分楚军和许国军队一起从围宋前线向申移动。其由围宋前线开始撤退的时间至少是在晋军入曹之前,否则,即使是楚军向申移动不受任何干扰,也不可能在城濮之战发生前到达申。
楚成王为什么要忽然从围宋前线带领部分军队撤退?
“楚成王乃引兵归”并不是由宋都商丘撤退到楚都郢,而是“入居于申”。由宋都商丘到楚都郢,申不是其必经之路。显然,楚成王在晋军攻曹之前从围宋前线忽然带领部分军队撤退,不是向郢,而是“入居于申”;不是只有楚的军队,而是包括郑、许军队在内;不是少部分楚军,而是大部分楚军,因为留给子玉的楚军只有“西广、东宫与若敖之六卒”。这说明,在申附近发生了比围宋更紧急且必须有大量军队才能解决的危机。
从《春秋》三传以及《史记》史料分析,秦参与了对楚作战是没有疑问的,但秦派出军队直接到城濮参战的可能性不大。鲁僖公二十五年,在楚申县的西北边境,曾发生秦、晋曾联合与楚作战。秦参与晋的救宋行动,完全可以在这里向楚发动进攻,而不是出动军队到曹、卫一带。现在还没有史料支持这种推断,但这种推断是合理和存在的。
通过以上分析,我们可以清晰地得出结论:大部分楚军在晋军围曹前就已经从围宋的前线撤退,《左传》作者似乎要刻意掩盖这曾经发生的史实,又故意给读者留下分析的线索:“退避三舍”典故就发生在此后的文字描写里,即使是楚成王从晋军入曹的那一刻起即从围宋前线向申撤退,二十一天时间也不足以使他帅师由商丘移动到今天南阳附近的申。如此描写只能说作者是有意的。
五、子玉率师北上是为掩护申叔撤退,而非追逐晋师
楚成王率领大部分楚军和郑、许军队从围宋前线移动到申,留下子玉率领部分楚军以及陈、蔡的军队继续围宋,其目的在于防止军队在移动过程中被敌军追击。在楚成王率领军队安全到达申后,子玉军队还有另外一个目的:接应申叔率领的戍谷楚军安全撤退。
鲁僖公二十六年,鲁“以楚师伐齐,取谷。……。置桓公子雍于谷,易牙奉之以为鲁援。楚申公叔侯戍之。”申叔戍谷所率领的军队应该即是由申、息子弟组成。城濮之战子玉败后,楚成王称“大夫(子玉)若入,其若申、息之老何?”杜预的解释是“申、息二邑子弟,皆从子玉而死。”后人亦多从此说。此说牵强。城濮之战,子玉率领的中军并没有受到损伤。而且,《左传》“王怒,少与之师,唯西广、东宫与若敖之六卒实从之。”很清楚地说明,从子玉的军队中没有申、息二邑子弟。申、息二邑子弟所组成的军队,归“申公”率领是自然的 。
楚成王“使申叔去谷,使子玉去宋。”
谷,杜注:“齐地。今济北谷城县。” 顾祖禹《读史方舆纪要》:“谷城,今(东阿)县治。”其引《郡志》:“东阿、谷城本二邑,并谷城于东阿自北齐始,移东阿治谷城自明初始。今县为土城,周四里,即谷城故址云。”江永《春秋地理考实》:“此谷即齐桓公封管仲邑,东汉分东阿置谷城县,今为泰安府东阿县治。《姓氏书》谓‘谷为姬姓国,齐灭之。’”杨伯峻谓:“今山东省东阿县旧治东阿镇。”然据《水经注济水》:“济水自鱼山北径清亭东。京相璠曰:今济北东阿东北四十里有故清亭,即《春秋》所谓清者也。……。又北过谷城县西。”京相璠乃晋代地理学家,其时东阿县治在今阳谷县阿城。东阿镇在济水东南,不在济北。
在鲁改变与楚立场,卫、曹相继被灭,陷入重围的申叔如果没有子玉接应,是根本无法从谷撤退的。掩护申公叔侯部队安全撤离是子玉必须承担的责任。
戍谷楚军不能向东、南撤退,因为在谷的东和南山地、丘陵,湖泊、沼泽的自然地理条件,限制了其撤退路线只能是由谷向西入卫,然后折而向南穿越卫境,在子玉率领的军队接应下,才有可能安全地撤退。
由“子玉使宛春告于晋师……乃拘宛春于卫”可以清楚地看出,此时的晋军已经由曹移动到卫,而不是在曹。子玉也已经由宋向北移动到达卫楚丘附近,而不可能继续围宋。城濮之战发生的前日,宋公已经出现在对楚作战前线,充分说明晋军“退三舍”开始时子玉军队不是由宋开始移动。楚军从围宋转而挥师向北不是因为晋的态度使“子玉怒,从晋师”,而是为了接应申叔撤退。
六、城濮地望考
研究城濮之战必须考证城濮地望。
杜注:“城濮,卫地。”后代各家一般都以山东省鄄城西南临濮集当之。此说存在严重缺陷:
(一)由“子玉使宛春告于晋师……乃拘宛春于卫”分析,此时晋军驻地在卫而不在曹。鄄城西南临濮集在卫东南,若晋军由卫向此移动,是面迎向楚军而不是“退避”。
(二)“夏四月戊辰……晋侯登有莘之虚以观师。……。己巳,晋师陈于莘北。”显然城濮距离莘不远。杜注:“有莘,故国名。”江永《春秋地理考实》引《汇纂》:“《括地志》:‘陈留县东五里有莘城,即古莘国。’今开封府陈留县有莘城,兖州府曹县有莘仲集,其地接二县界也。”谓:“城濮,未审的在何地,晋师陈于莘,莘在陈留,则城濮亦在陈留。但陈留去曹颇远,不得接界,莘仲集当别是一地。”其实仍未说清莘具体所在。杨伯峻也有一番考证,最终以《春秋舆图》称“有莘氏之虚在今山东曹县西北。”但此处距临濮集至少在百里以上,晋文公重耳不能在一天之内往返于两者之间。
(三)“楚师背酅而舍,晋侯患之。”杜注:“酅,丘陵险阻名。”杜预还是将酅作为地名解释,杨伯峻则把酅干脆解释成“丘陵险阻者”。这种解释是不负责任的。鄄城西南临濮集一带是平原,根本不可能存在“丘陵险阻者”。“酅”只能是鲁僖公二十六年鲁追齐师至酅之处,与鄄城不沾边。
(四)城濮之战后,“晋师三日馆谷,及癸酉而还。”杜注:“馆,舍也,食楚军谷三日。”又是匪夷所思的解释。战胜的晋军如果缴获楚军辎重,自然归晋军所有,“楚军谷”自然也归晋军所有,“食楚军谷三日”从何谈起?
晋军兴师的一个重要目标是“出谷戍”,即将戍谷楚军驱逐。“晋师三日馆谷,及癸酉而还。”很显然是在城濮之战胜利后在谷驻扎三天,然后由谷撤出。说明城濮距离谷不远。
“楚师背酅而舍,晋侯患之。”说明子玉接应申叔的企图,所谓晋军“退避三舍”,仍只是《左传》作者的文学性描写,而不可能是史实。晋军的行动是与齐一道解决戍谷楚军,其中包括宋和秦的意志,在军事行动上不能如此儿戏。根据史料给出的条件,城濮距离有莘、酅、谷不远。鲁桓公十六年卫宣公欲杀公子伋,“使盗待诸莘”,位置在今山东省莘县一带。以此为古莘国所在地,比《括地志》“陈留县东五里有莘城,即古莘国。”更具说服力。谷,今阳谷县阿城。酅,其地在今山东省东阿县西南。综上所述,城濮之战只能是发生在这一带。具体地点可以另外考证,但不会超出上述范围。也只有在此范围内,才能符合史实。
从战斗结束后“晋师三日馆谷,及癸酉而还。甲午,至于衡雍”分析,城濮也不可能在临濮集。从癸酉至甲午共二十二天。衡雍,郑地,其地当在今河南省原阳县西。临濮集至此直线距离只有三百里,这一带为平原地带,没有更多曲折,不需要太长时间。晋师当是由谷出发。
七、城濮之战结果对中国历史发展进程的影响
本文不对城濮之战具体过程作分析,战斗的结果“楚师败绩”是没有异议的,以晋为首的中国诸侯在齐桓公后再次取得了对楚作战的胜利。亲楚的卫成公失国,曹共公被执,鲁以杀子丛(公子买)的方式获得谅解,陈、蔡战败,作为参与围宋的郑国将如何面对当前局势?
晋军由谷地出发行进到衡雍,显然不是直接归国。在这里,遇到了周天子,这也一定不是巧遇,但相信也不会是晋国的安排。就《左传》文字分析,当是郑为摆脱惩罚而采取的措施:
乡役之三月,郑伯如楚致其师,为楚师既败而惧,使子人九行成于晋。晋栾枝入盟郑伯。
如果没有前面的分析,我们同样没有办法对“乡役之三月,郑伯如楚致其师”做出合理的解释,也只能人云亦云。在前面的分析中,我们已经清楚地知道,郑出兵助楚围宋。在城濮之战战斗序列里没有发现郑师,是郑师随楚成王回撤到申,以应付那里发生的事情,郑伯随行。故《左传》说“乡役之三月,郑伯如楚致其师”。此时,郑已清晰地判明楚败局已定,楚败,以晋为首的诸侯必然讨伐从楚的中国诸侯,郑在当然惩罚之列。因此,在城濮之战发生前的三月,郑伯就“使子人九行成于晋”,并且获得了晋的认可:“晋栾枝入盟郑伯”。一个“入”字说明栾枝是入郑而盟,在“晋侯及郑伯盟于衡雍”之前。四月甲午,晋军“至于衡雍,作王宫于践土。”于此策命晋侯为侯伯,并“赐之大辂之服,戎辂之服,彤弓一,彤矢百,玈弓矢千,秬鬯一卣,虎贲三百人。”可知周襄王由东周出发之前对此必须已经作出决定,并作了相应的准备。而这一切在城濮之战以晋为首的中国诸侯之师战胜楚军结束即已经着手安排,所以,才能有战后晋军不是直接归国,而是押解着大量的楚俘到衡雍,然后“作王宫于践土”,在这里献俘和接受策命,这一切决不是临时起意。“郑伯傅王,用平礼也。”也清楚地说明,这些安排与郑伯是分不开的。
由于郑的地理位置正处于楚向中国诸侯进攻的要冲,郑从楚实在是不得已之举,正如鲁宣公十二年郑皇戌所言:“郑之从楚,社稷之故也。”但其地位和实力并不具备担当抗楚领袖的条件。(鲁僖公五年之“吾抚女以从楚,辅之以晋,可以少安。”其“从楚”是在齐桓公败楚之后追逐楚,与“从属楚”之意完全相反。在此不作过多分析。)平王东迁之后,周王室已经衰微。作为蛮夷的楚国,不仅是只有不臣之心,在灭亡汉阳诸姬之后,已经有不少属于中国诸侯序列的国家亡入楚的版图。西周初期“封建亲戚以蕃屏周”的措施使后来觊觎天子之位者不能如商、周一般以“殷革夏命”或者“小邦周代大邑商”的方式取得,必须在以降服大量诸侯的基础上并对之进行相应的变革,才能真正获得政权。在齐桓公之后,由于宋的亡殷后嗣的特殊身份是成为伯国地位的先天缺陷不但得不到周王室和诸侯信任,即使是在宋国国内,同样也存在着分歧。在三桓统治下的鲁国以及陈、蔡、曹、卫等都不具备相应的实力,燕则绝远,秦不受诸侯信任,能够担此重任的只有晋。此时的东周王室急需要有可以团结和带领中国诸侯对抗楚国的领袖,城濮之战的过程和结果自然形成了抗楚的统一战线,在此基础上,郑伯建议周王室策命晋文公为“侯伯”是顺理成章的。这是晋文公政治势力集团希望得到的结果,在郑也是同样希望得到的结果。
《周礼·大宗伯》:“壹命受职,再命受服,三命受位,四命受器,五命赐则,六命赐官,七命赐国,八命作牧,九命作伯。”侯伯是中国诸侯的权利,中国诸侯的侯伯只能属于中国大国诸侯,团结和带领诸侯攘夷尊王是侯伯(霸)的基本使命。楚本身就不属于中国诸侯序列,是“四夷”之一,将齐、晋联合诸侯抗楚称为“齐楚争霸”或者“晋楚争霸”是很荒谬的。晋国国君得命“侯伯”,奠定了今后春秋历史的走向,也决定了中国历史发展的进程。
城濮之战完整过程应该从晋兴师出太行开始,到“献楚俘于王结束”,完成了对卫的惩罚、以“出谷戍”联齐、迫使鲁杀子丛改变从楚立场、伐曹且数其投献楚警告其他诸侯、释宋围以结宋、团结秦加入中国行列以及在具体的城濮之战中败陈、蔡,以及后来伐许等,形成了春秋时期最为巩固、范围最广的抗楚联盟,并因此改变了中国历史发展的进程。在整个春秋时期,尽管还有不断的反复,介于晋楚之间的郑不断受到各种攻击,陈、蔡灭而复置,但中国格局大致维持不变。
历史不可以假设,但对影响历史发展进程事件如果没有发生,或者是另外的结果的推测判断必然存在。可以设想,在当时的形势下,晋没有出兵,或者失败于楚,中国历史发展将是如何的进程?
正如《左传》所说:“出谷戍,释宋围,一战而霸。”是城濮之战取得的重要成果,从此奠定晋在中国诸侯中的领袖地位。“民于是大服”,巩固了重耳集团对晋国政权的掌握。但同时也为后来晋的分裂埋下了种子。
注释:
①《史记·楚世家》
②魏昌:《楚国史》第42页,武汉出版社2002年12月第2版
③易本烺《春秋楚地问答》
④杜预及江永《春秋地理考实》包括杨伯峻均以缗在今山东省金乡县东北。有人不知楚围缗动机,认为缗当在宋西南(陈可畏《城濮之战地理考释》)。若缗在宋西南,子玉围缗是没有意义的。
⑤杜预、杨伯峻等均持次说。
⑥载《濮阳职业技术学院学报》2010年第04期。
⑦《春秋》鲁僖公四年:“沙鹿崩。”杜注:“沙鹿,山名。平阳元城县东有沙鹿土山,在晋地。”元城古县与大名县同城而治,民国时期并入大名县。渡河后向南即卫之五鹿。
联系客服