官渡之战
建安五年曹操与袁绍在黄河南岸的决战。一场靠一夜奇袭定下的胜负,决定了此后北方由谁来收拾。
叙事
建安四年,袁绍终于把公孙瓒逼上了他自己造的那座高楼。楼塌了,火起了,河北再没有第二个人可以跟他说话。
这一年袁绍手里握着四个州——幽、冀、青、并。冀州是当时天下最富的地方之一,人口稠密,产铁产马,能供得起十几万人常年在外面吃饭。他出身汝南袁氏,四世三公,天下的名士见了他都要低半个头。四十多岁的袁绍站在河北,往南看,只剩一个人挡路。
那个人是曹操。
曹操的处境要难看得多。他名义上是朝廷的司空,手里攥着汉献帝,这块牌子好用,也扎手——它意味着所有想当忠臣的人都会来找他,也意味着所有想当忠臣的人都会来杀他。他的地盘是兖州、豫州和刚打下来的徐州,四面全是缺口:西边有关中诸将,南边有张绣、有刘表,东南有孙策,背后随时可能翻脸的人多得数不过来。
更要命的是粮。中原被打烂了十来年,田里长的是草。他能凑出来的兵,跟袁绍不在一个量级上。
所以问题不是打不打,而是怎么打,以及在哪里打。
袁绍这边其实有人看得很清楚。
沮授的主张是:不必急。河北富,曹操穷;我们守住黄河,派轻骑不断骚扰他的边地,让他两三年不得安生,他自己就先垮了。田丰说的也是一个意思——曹操善用兵,变化多,不能拿硬碰硬去赌一场;应当据险固守,慢慢消耗。
这两个人说的,是当时最正确的话。
袁绍不听。
后世总喜欢把这归结为”袁绍笨”,其实不对。袁绍不是不懂持久战的道理,他是不能持久。他的集团是靠河北士族和从洛阳带来的旧部拼起来的,内部本来就分成好几块,郭图、审配、逢纪、沮授、田丰彼此不服,谁的主张被采纳,谁就多一分权。一场速胜可以把所有裂缝暂时糊住,一场三年的消耗战只会让裂缝越裂越大。
而且他有十几万人。当一个人手里有十几万人的时候,“再等三年”这四个字,说出口都显得懦弱。
于是田丰被关进了牢里——出发前,袁绍先把说真话的人关了起来。
建安五年正月,曹操做了一件所有人都反对的事:他不去河边布防,反而带兵向东,去打刘备。
刘备刚刚杀了徐州刺史车胄,占了下邳,摆明了要在曹操背后开一个口子。众将说,现在跟您争天下的是袁绍,袁绍马上就到,您却往东跑,万一袁绍抄了后路怎么办?
曹操的回答是:刘备是人杰,现在不打,将来一定成祸患;袁绍虽然志向大,反应却慢,他不会动。
结果他赌对了。曹操东行、破刘备、俘关羽,再回到官渡,前后不过一个多月。袁绍在这一个多月里,什么也没做。
田丰在狱中听说了,说了一句话,意思是:这是天赐的机会,错过了就没有了。
袁绍的迟钝,不是懒。一个由几派人马拼起来的集团,任何一个决定都要开会,任何一次开会都会吵架。曹操是自己一个人拍板,袁绍是一群人拍板——这两种机器的转速,差着一个数量级。
二月,袁绍的大军压到黎阳,隔河而望。前锋颜良渡河,去打白马的东郡太守刘延。
曹操来救。荀攸给了他一个办法:不要直接去白马。带兵到延津,摆出一副要从这里渡河、去抄袁绍后路的架势。袁绍必然分兵西来堵你。等他兵一动,你立刻回身,轻骑直插白马——那里就只剩颜良了。
袁绍上钩了。他把兵分了一半向西。
曹操掉头东进,一夜之间赶到白马近郊。等颜良发现的时候,曹军已经在眼前。仓促之间列阵,关羽在人马之中望见了颜良的麾盖,直接策马冲进去,把他刺于万军之中,割下首级回来。袁军前锋崩了,白马之围解了。
这是关羽一生里最纯粹的一次战斗,也是他后来被反复神化的起点。而这一年,他还是个曹操名下的降将。
曹操没有守白马。他把白马的百姓迁走,沿着黄河向西南撤——他要的从来不是一座城,是把袁绍拖进他选好的战场。
袁绍追。追到延津之南的时候,出事了。
曹操命令骑兵下马,把马鞍卸了,辎重车丢在路上,人躲进土坡后面。追兵到了,看见满地的军械粮车没人管,队形立刻散了,人人下马去抢。
曹操等的就是这个。五百多骑兵从坡后冲出来,跟着步兵压上去,把正在抢东西的袁军拦腰截断。这一战斩了文丑。
两阵之间,袁绍折了两员大将。这个开局,对一个拥有十几万人的统帅来说,是不祥的。
沮授劝他:我军人多但不够精,曹军精但不够多;他缺粮,利在速战,我们不能急。袁绍再一次不听,而且这一次,他把沮授的兵权分掉了。
八月,袁绍把营寨推到官渡,依着沙堆扎下来,东西连绵数十里。曹操也分营对峙。
从这里开始,这场仗变成了一场消耗。
袁绍堆起土山,架起高楼,居高临下往曹营里射箭。箭像下雨一样落下来,曹军的人在营里走路都得举着盾牌。曹操做出投石的车来还击,把土山上的楼砸塌。袁军又挖地道往营里钻,曹操就在营前挖长沟横着拦。
进攻的一方在想办法,防守的一方也在想办法。表面上是平手。
但两边耗的东西不一样。袁绍耗的是时间,曹操耗的是命。
九月里,曹操出营接战,打输了,只好退回去死守。到了后来,粮几乎见底,运粮的民夫被打怕了,士卒饿着肚子还要在土墙上挨箭。军中开始有人偷偷跟袁绍写信——那是很实际的打算:万一败了,得有个去处。
曹操自己也动摇了。他写信给留在许都的荀彧,商量要不要退回去。
荀彧回信,大意是:现在退,就是把主动权整个交出去;您以最弱当最强,如果压不住他,就要被他吞掉。眼下双方都到了极限,谁先动谁就完了。这正是出奇制胜的时候,千万不能失去这个机会。
这封信里最有分量的不是道理,是一个判断——荀彧告诉曹操:你觉得你快撑不住了,袁绍那边也一样。
曹操决定不退。
一个人的伟大,很多时候只体现在这样一个瞬间:所有理由都指向撤退,而他多站了一会儿。
转机来自一个叛徒。
许攸是袁绍的老朋友,年轻时和曹操也相识。他向袁绍献过一条计:曹操把全部兵力都压在官渡,许都必然空虚,派一支轻骑绕过去打许都,天子一到手,胜负立判。
袁绍没有采纳。
紧接着,许攸家里人犯了法,被留守邺城的审配抓了起来。许攸得到消息,连夜出营,投了曹操。
曹操当时已经睡下了,听说许攸来,鞋都没穿就跑了出去。
许攸带来的是一句话:袁绍的辎重一万多车,屯在乌巢,离他的大营四十里,守将是淳于琼,防备并不严。
这句话的分量,曹操立刻听懂了。他没有开会,没有商议,也没有问许攸是不是诈降——他只是问了自己一个问题:如果这是真的,机会有多大;如果这是假的,我最坏的结局,跟不动手的结局有什么区别。
答案是:没有区别。他本来就要输了。
当夜,曹操留曹洪、荀攸守大营,自己挑了五千步骑,全部打袁军的旗号,衔枚缚马口,人人抱一捆柴草,抄小路直奔乌巢。路上遇到盘问的,就答一句”袁公怕曹操抄后路,派我们去加强守备”——袁军放行了。
天没亮,乌巢的粮囤四面起火。
淳于琼那边有一万多人,人数比曹操多。天亮以后他看清了曹军兵少,出营列阵反攻。曹操上去就打,把他打回了营里。
与此同时,乌巢起火的消息传到了袁绍大营。
这是袁绍这一生里最后一个重大决定,也是最错的一个。
张郃说:曹操亲自去了乌巢,那里一破,我们全军就没有吃的了,请立刻发重兵去救。
郭图说:不如去打曹操的大营。他的营空了,我们直接端了它,他自然要回来救,乌巢之围不攻自解。
这是”围魏救赵”的道理,听上去很高明。它唯一的问题是——曹操的大营不是空的,而且,就算你端了曹操的营,你的粮已经烧了。
袁绍两个都做了一半:派轻骑去救乌巢,派重兵去攻曹营。
于是两边都不够。
救乌巢的骑兵到了,曹操的部下报告说敌人快到了,请分兵去挡。曹操头也不回,只说了一句:等他们到了背后再来报。
这一句话是全场最狠的一刀。它的意思是:我不分兵,我就在这几十步内,先把淳于琼砍了。
淳于琼死了。一万多车粮草,全部烧成灰。
而袁绍那支去攻曹营的重兵,撞在了曹洪的壁垒上,攻不下来。
消息传回前线的时候,张郃、高览还在曹营外面攻城。
郭图为了掩饰自己的错,反过来在袁绍面前说张郃的坏话——说他听到军败,言语间还带着幸灾乐祸。
张郃听到了。
他和高览烧了攻城的器械,向曹操投降。
这一降,是压垮袁军的最后一件事。十几万人立刻明白了两件事:粮没了,将也走了。
军队是一种奇怪的东西。它可以在极大的伤亡下不散,却会在某一个瞬间,因为一句话、一阵风、一个逃跑的背影,整个化掉。官渡的那一刻就这样到来了。
曹军全线压上,袁军土崩。袁绍连甲都来不及披,带着长子袁谭,以八百骑渡河北去。
十几万大军,走出去的只有八百骑。
剩下的是清点。
袁绍的图书、车仗、金帛,全部落入曹操之手。降卒极多——多到曹军自己都养不起。这些人被处置了,诸书都说八万,也有说七万的。这个数字后来被反复引用,因为它太大了,大到不像一场胜利,像一场灾难。
在缴获的文书里,有一批信。是曹操自己的部下和许都的官员,在最艰难的那些日子里写给袁绍的。
曹操把信全部烧了,一封没看。他说了一句话,大意是:当时连我自己都保不住自己,何况别人。
这不是宽厚,这是精算。追究下去,他要杀掉自己一半的官吏和大半的将领;烧掉,他花零成本买下了所有人的忠诚。一个人在胜利的顶点还能做这样的计算,比他在乌巢的那把火更可怕。
沮授没跑掉。他被俘之后,见了曹操,说自己不降。曹操本来很欣赏他,厚待了他,但他终究想回河北去,最后被杀了。
田丰在狱中。有人向他道喜:您说对了,主公败了,这下一定重用您。
田丰说:如果他赢了,我还能活;他败了,我一定死。
袁绍回到河北,对身边的人说:我当初不听田丰的话,现在回去,要被他笑话了。
田丰死了。
官渡以后,袁绍并没有立刻垮。河北的底子还在,他还打退过曹操的进攻。但建安七年,他忧愤发病,死了。
真正杀死袁氏的不是官渡,是官渡之后。袁谭和袁尚为了继承权互相攻杀,把河北最后的力量耗在了自己人身上——而这恰恰是袁绍生前那套”谁也不得罪、谁也不确定”的作风留下的遗产。他连自己的接班人都不肯明说。
曹操只需要在旁边等,一次次地等他们打累了,再进一步。到建安十二年,北方大定。
后人讲官渡,最爱讲的是”以少胜多”。
但这四个字,恰恰是这场战役里最不重要的部分。
袁绍从头到尾没有输在兵力上。他输在:正确的意见摆在面前时,他选择了让他最舒服的那一条;两个方案都有道理时,他两个都做了一半;下属吵架时,他既不裁决,也不制止,只是听着。
他不是没有能力,他是没有决断。而一个没有决断的人,兵越多,死得越快——因为每一支多出来的兵,都会多出一个必须被安抚的将领,多出一种必须被容忍的意见。
曹操则相反。他缺粮、缺兵、缺后方,缺到写信问部下能不能撤退。但在乌巢那个晚上,当所有条件都是错的,他只做了一件事:把仅有的东西,全部押在一个点上。
这是两种人格的对撞,也是两种组织的对撞。
那一夜之后,中国北方的走向,就再没有第二个答案了。
考据
史料本体。 本条目主要依据《三国志·魏书一·武帝纪第一》建安五年条(已实查卷次,s1)与《三国志·魏书六·董二袁刘传》中的袁绍传及裴松之注(已实查卷次,s2)。关羽白马刺颜良一事,见《三国志·蜀书六·关张马黄赵传》关羽本传(已实查卷次,s3)。《后汉书》袁绍传、《资治通鉴》汉纪建安五年部分卷次尚未实查,标「待核」(s4、s5)。凡本条目未实查原文者,一律不在正文中作引号直引。
兵力问题。 《三国志·武帝纪》记曹军”兵不满万,伤者十二三”。这条记载在南朝就已经被怀疑:裴松之作注时提出,曹操分营与袁绍相当、连营数十里,若只有不到一万人,如何能分?袁绍若真有十倍之众,为何不四面围死,反而让曹操能抽出五千人去抄他的后路?裴松之的结论是此数偏少。今人多同意曹军确实远少于袁军,但绝非”不满万”,估计从数万到十万不等。本站的处理是:承认双方兵力悬殊这一基本事实,但把”不满万”标为存疑之说,见 disputes 第一条。
降卒数字。 裴松之注引诸书,皆云曹操坑袁绍降卒八万,也有作七万的。本站取八万为主说,并列七万异说。需要说明的是:这个数字与”袁军十余万”的总数之间存在明显的张力——如果降卒真有七八万,那么袁军的建制并未被全歼,而是大部分成建制地投降;这反过来又成为质疑曹军”兵不满万”的一条旁证:不到一万人,如何看管七八万降卒?此点尚未详考。
斩文丑者为谁。 武帝纪于延津之战只记文丑被斩,并未说明是谁所斩。小说《三国演义》把颜良、文丑都归到关羽名下,是文学处理。正史中关羽所斩者,仅颜良一人。
许攸出走。 袁绍拒绝许攸袭许都之计在前,许攸家人犯法被收在后,两件事孰为主因,史无定论。本站以”家属犯法”为主说,另说”贪财求索不遂”并列,见 disputes 第三条。
关于郭图。 郭图主张不救乌巢而攻曹营,以及事后构陷张郃,这两条主要来自《三国志》袁绍传及相关注文。张郃本传与袁绍传在细节上略有出入,本条目取其大略,未逐条辨析。
纪年。 官渡之战诸事均发生于建安五年(公元 200 年)内,农历正月至十月。农历正月约当公历 200 年 2 月,十月约当公历 200 年 11 月,未跨公历年,故 time 的起讫同为 200。正文中的月份一律为农历月。
注释
- 官渡:在今河南中牟东北一带,是许都北面的门户,也是黄河南岸通往许都的要道。
- 黎阳:黄河北岸渡口,在今河南浚县一带。袁绍南下的前进基地。
- 白马:黄河南岸城邑,在今河南滑县东。
- 延津:黄河渡口,在今河南延津一带。
- 乌巢:袁军屯粮之地,在今河南延津东南一带。距袁绍大营四十里。
- 沮授(jǔ shòu):袁绍谋士,主持久之策,屡谏不用。
- 逢纪(páng jì):袁绍谋士。姓”逢”此处读 páng。
- 淳于琼(chún yú qióng):袁绍部将,与曹操、袁绍同为汉末西园八校尉之一。
- 司空:东汉三公之一,名义上掌水土营建,实为宰辅之任。曹操以司空录尚书事,总揽朝政。
- 四世三公:袁氏自袁安以下四代人中,有五人官至三公(司徒、司空、太尉)。这在东汉是极高的政治资本——门生故吏遍天下,袁绍起兵之所以能一呼百应,很大程度上靠的是这块招牌。
- 衔枚:行军时口中横衔一根短棍,防止出声。
关 键 数 据
| 袁绍据有州数 | 四州(幽、冀、青、并),建安四年(199)灭公孙瓒后成形 |
|---|---|
| 袁军兵力 | 步兵十余万、骑兵一万 |
| 曹军兵力(本传记载) | 兵不满万,伤者十二三 |
| 延津伏击出击兵力 | 骑兵五百余骑(另有步兵) |
| 袁军连营规模 | 依沙堆为屯,东西数十里 |
| 乌巢与袁军大营距离 | 四十里 |
| 淳于琼护粮兵力 | 万余人 |
| 乌巢屯积辎重 | 万余乘 |
| 曹操奇袭乌巢兵力 | 步骑五千 |
| 袁绍北渡随从 | 与长子袁谭以八百骑渡河 |
| 战后处置降卒 | 诸书皆云坑绍众八万,或云七万 |
| 袁绍卒年 | 建安七年(202)忧病而死 |
| 曹操统一北方之年 | 建安十二年(207)征乌桓、定辽东后北方大定 |
学 界 异 说
- 曹军人数确实远少于袁军,但"兵不满万"之说偏低,实际当有数万
- 依《三国志》本文,官渡曹军确实兵不满万,伤者十二三
- 曹军总兵力与袁军相去不远,今人有估至十万者
- 八万(裴松之注称"诸书皆云")
- 七万(异说)
- 家属犯法被审,许攸怒而出走
- 许攸贪财,求索不遂,为袁绍所疏
影 响(编 者 的 推 断)
为什么单独列出来:没有任何一条史料能"证明"跨越百年的因果——那是现代人的推断。 所以它和史料直陈的事实分开显示。明示这是编者的解释,比假装有史料诚实。
关 联
| 参与 | p-cao-cao(未撰) — 亲率步骑五千夜袭乌巢 |
|---|---|
| 参与 | p-yuan-shao(未撰) — 拥四州之众南下,兵败北渡 |
| 参与 | p-guan-yu(未撰) — 白马阵中刺杀颜良,解白马之围 |
| 参与 | p-yan-liang(未撰) — 袁军前锋,攻白马,战死 |
| 参与 | p-wen-chou(未撰) — 袁军将领,延津追击时战死 |
| 参与 | p-ju-shou(未撰) — 谏缓进持久,不用;兵败被俘,后被杀 |
| 参与 | p-tian-feng(未撰) — 谏勿轻举,下狱;战后被袁绍所杀 |
| 参与 | p-xu-you(未撰) — 自袁营出走归曹,献乌巢屯粮之实 |
| 参与 | p-chunyu-qiong(未撰) — 领万余人护粮屯乌巢,兵败被斩 |
| 参与 | p-zhang-he(未撰) — 请救乌巢不用,后与高览降曹 |
| 参与 | p-gao-lan(未撰) — 与张郃同降曹 |
| 参与 | p-guo-tu(未撰) — 主攻曹营之议,事败构陷张郃 |
| 参与 | p-xun-yu(未撰) — 守许都,去书劝曹操勿退 |
| 参与 | p-xun-you(未撰) — 献声东击西解白马之围之策 |
| 参与 | p-liu-bei(未撰) — 建安五年正月为曹操所破,奔袁绍 |
| 地点 | pl-guandu-han(未撰) |
| 起因 | e-yijing(未撰) |
被 引 用
史 源
s1 《sanguo-zhi》 卷一·魏书一·武帝纪第一(建安五年条) 「兵不满万,伤者十二三」 s2 《sanguo-zhi》 卷六·魏书六·董二袁刘传(袁绍传及裴松之注) 「诸书皆云公坑绍众八万,或云七万」 s3 《sanguo-zhi》 卷三十六·蜀书六·关张马黄赵传(关羽传) s4 《hou-han-shu》 待核(袁绍传) · 待实查 s5 《zizhi-tongjian》 待核(汉纪·建安五年) · 待实查
⚠ 本条目有 2 条史源的卷次尚未实查,一律标「待核」。
本站铁律:不得凭记忆填卷次——那正是 AI 最容易一本正经编造的东西。
未实查是老实的状态,编一个卷次才是欺骗。