十 袁紹和曹操的戰爭

2024-10-13 15:20:01 作者: 呂思勉

  袁紹是曹操的大敵。他不但地廣兵強,在社會上聲望很高,勢力極大,即論其才具,在當時群雄中,亦當首屈一指。從袁紹敗後,北方就沒有人能和曹操抵敵的了,雖然並沒有全平定。曹操的破袁紹,事在漢獻帝建安五年(公元200年)。《三國志·魏武帝本紀》說:「初,桓帝時,有黃星見於楚宋之分(古人有分野之說,把天文、地理都分畫作若干部分,說哪一部分天象的變動,主地面上哪一部分的休咎,也是一種迷信之談)。遼東殷逵善天文,言後五十歲,當有真人起於梁、沛之間,其鋒不可當。至是凡五十年,而公破紹,天下莫敵矣。」這些話,固然是附會之談,然而當時的人重視袁曹的戰爭,也就可想而知了。

  怎說袁紹的才具並不算弱呢?讀史的人都說袁紹地廣兵強,而當曹操沒有平定河南以前,不能起而與之爭衡,坐令他破陶謙,平呂布,且收服了劉備,趕走了袁術,到他養成氣力,挾天子以令諸侯,再要起來和他爭衡,就難了。其實不然。

  

  要和大敵爭衡,先要後方沒有顧慮。袁紹的地盤,是現在河北、山西兩省,在建安四年(公元199年)以前,問題正多著呢。別的且不論,公孫瓚就是到建安四年三月,才給袁紹滅掉的,而在建安三年的冬天,呂布業已給曹操滅掉了。到四年的春天,河內太守張楊為其將楊丑所殺,又有一個喚作眭固的,殺掉楊丑,歸附袁紹,曹操就進兵把他打破,這一年八月里,曹操進兵黎陽(漢縣,在今河南濬縣東北),旋又回兵,而分兵把守官渡(城名,在今河南中牟縣東北)。此時曹操的兵力,業已達到河北了。袁紹從公孫瓚破滅以後,就派他的大兒子袁譚去守青州,第二個兒子袁熙去守幽州,又派他的外甥高幹去守并州,其布置並不算遲。

  至於說他坐視曹操入居中央,挾天子以令諸侯,以致於己不利,則當時挾著一個天子,實際並無甚用處,在上一節中業已說過;而袁紹在曹操遷獻帝許都之後,曾經挾著兵威,脅迫曹操,要令他把獻帝遷徙到鄄城(漢縣,在今山東濮縣東),置於自己勢力範圍之內。袁紹的本意,是要否認獻帝的,此時又有此轉變,其手段也不算不敏捷。曹操自然是不肯聽的,因為曹操斷不是虛聲所能恐嚇的;袁紹此時,既因河北內部尚有問題,不願和曹操以實力相搏,自然只好聽之而已。然而袁曹的成敗,始終和挾天子與否無關,所以這也算不得袁紹的失策。

  這時候,曹操的後方,也不是絕無問題的。其中最足為患的,就是屯紮在穰縣(今河南鄧縣)的張繡。因為他的地勢,可以南連劉表,是有接濟的。然而張繡聽了賈詡的話,卻投降了曹操。賈詡所以勸張繡投降曹操,大約因兵力不足和曹操相敵,袁紹相隔太遠,不能應援,劉表又系坐觀成敗之徒,未必能切實聯合之故。《三國志·賈詡傳》載他勸張繡的話:(一)是因曹操挾天子以令諸侯;(二)則袁紹兵多,你投降他,他未必看重,曹操兵少,你投降他,他必另眼相看之故;怕也未必確實的。張繡的投降,是建安四年十一月的事,到十二月,曹操就又進兵官渡了。

  然而張繡之難甫平,劉備之兵又起。原來這時候,袁術在淮南,因其荒淫過甚,弄得民窮財盡,不能立腳,要想去投奔袁紹,打從下邳經過,曹操便派劉備去攔截他。劉備是有野心的,不肯服從曹操,他把袁術攔截回去,袁術又氣憤,又窮困,病死了,他卻和董承通氣,說奉到了獻帝的衣帶詔,叫他們誅滅曹操,就在下邳起兵。把徐州刺史車胄殺掉,屯兵小沛。

  曹操派劉岱、王忠去打他,都給他打敗了。建安五年正月,董承等陰謀發覺,都給曹操殺掉,曹操立刻起兵東征。這件事,《三國志·魏武帝本紀》上說:「諸將皆曰:『與公爭天下者袁紹也,今紹方來,而棄之東,紹乘人後,若何?』公曰:『夫劉備,人傑也,今不擊,必為後患。袁紹雖有大志,而見事遲,必不動也。』郭嘉亦勸公。」曹操遂決計東行。《袁紹傳》上說:曹操攻劉備時,田豐勸袁紹襲其後方,袁紹說兒子有病,不聽。「豐舉杖擊地曰:『夫遭難遇之機,而以嬰兒之病失其會,惜哉!』」這也是事後附會之談。

  曹操是善於用兵的人,後方絕不會空虛無備;況且當時曹操也有相當的兵力,後方絕不至於空虛無備。袁紹的根據地在河北,要襲擊許昌,先要渡過黃河,渡過黃河之後,還有好幾百里路,絕非十天八天可以達到。如其說輕兵掩襲,那是無濟於事,徒然喪失兵力的。劉備初起兵,力量有限,未必能牽制曹操許久。這一點,曹操和袁紹都是明白的。曹操所以決計東征,也是為此。

  接觸之後,自然是劉備敗了,便投奔袁紹。當時守下邳的是關羽,孤軍自然難於抵抗,就暫時投降。關羽的投降,的確不是真降的,至於封金、掛印、過五關、斬六將等事,就都是演義上渲染之談,無關宏旨的了。

  劉備在當時,兵力雖然不足,然而他是個有野心、有能力的人,倘使曹操和袁紹以主力相持,而劉備從後方搗亂,這確是一個大患,所以曹操要先把他除掉。劉備既敗之後,曹操後方就無甚可怕的搗亂之徒了。

  當時還有一個臧霸,本來是泰山一帶的強盜。他是服從呂布的。曹操破呂布後,招降了他,就把青、徐二州的事情交給他。這時候,臧霸頗能出兵以牽制袁紹,所以曹操不怕袁紹從現在山東的北部進兵。不過臧霸的兵力,亦只能牽制袁紹不從這一路進兵而已,要想搗亂現在的河北,成為袁紹的大患,其兵力也是不夠的。於是袁曹二人,不得不各出全力,在現在河南境內的黃河沿岸,決一死戰。

  建安五年二月,袁紹派顏良等攻東郡太守劉延於白馬城(漢縣,在今河南滑縣東)。袁紹帶著大兵,進至黎陽。四月,曹操自己帶兵去救劉延。荀攸因袁紹兵多,勸曹操引兵西向延津(黃河渡口,在今河南延津縣北),裝出要繞道襲擊袁紹後方的樣子。袁紹果然分兵而西。曹操就趕快引兵回來,派張遼和關羽先登,把顏良擊斬。關羽就在這時候,封書拜辭曹操,走歸劉備了。於是袁紹整兵渡河,攻擊曹操。劉備和文丑先到。曹操又把文丑擊斬。《三國志·魏武帝本紀》說:「良、丑皆紹名將也,再戰悉禽,紹軍大震。」顏良、文丑之死,曹操固然先聲奪人,然而袁軍的主力並沒有動,勝負還是要決一死戰的。

  曹操破顏良、文丑之後,回兵官渡。袁紹便進兵陽武。(今屬河南原陽縣)彼此相持,直到這一年八月里,袁紹才慢慢地進兵,靠著沙堆紮營,從東到西,連綿好幾十里。曹操也分兵和他相持。出兵決戰,曹操的兵不利。袁紹就進攻官渡。在地面上築起土山,地下掘了隧道,要攻破曹操的營。這時候,曹操的兵勢是很危急的。論起防守來,曹操自然有相當的力量,然而兵既比較少,糧食又要完了,眼看著不能支持。

  於是曹操寫一封信給後方的荀彧,商議要退兵回許都。當時曹操的兵勢既較袁紹為弱,倘使一動腳,袁紹乘機追擊,是很危險的。所以荀彧的覆信說:「公以至弱當至強,若不能制,必為所乘。」又說:「此用奇之時,不可失也。」這不過說退軍絕無全理,叫他不論什麼險路,到此時也只得拼死干一干罷了。

  《三國志》上所說的兵謀,大都是靠不住的。這大約因軍機秘密,局外人不得而知,事後揣測,多系附會之談,而做歷史的人所聽見的,也不過是這一類的話之故。獨有荀彧這一封信,據《三國志》本傳注引荀彧的《別傳》載曹操表請增加荀彧封邑的表文,曾經鄭重地說及。官文書不能偽造,可以相信其是真的。

  我們因此可以窺見當時兵事形勢的一斑。形勢是不得不冒險了,險卻怎樣冒法呢?那還是只有在兵糧上想法子。當時袁紹有運糧的車子幾千輛到了,曹操派兵襲擊,把他盡數燒掉。然而還不能搖動袁軍,這大約因袁軍糧多,不止這一批之故。到十月里,袁紹又派車輛出去運糧。這一次,袁紹也小心了,派淳于瓊等五個人帶著一萬多兵去護送。

  據《三國志》說,袁紹手下有一個謀士,喚作許攸,性甚貪財,袁紹不能滿足他,許攸便投奔曹軍,勸曹操去襲擊淳于瓊。曹操左右的人都疑心他。只有荀攸、賈詡兩個人勸曹操去。於是曹操帶著馬、步兵五千,夤夜前往。到那裡,已經天明了。淳于瓊等見曹操兵少,直出營門排成陣勢。曹操向前急攻。淳于瓊等退入營內。曹操就直前攻營,把營攻破,淳于瓊等都殺掉。這一次,曹操大概是捨死忘生,拼個孤注一擲的。

  《三國志·魏武帝本紀》說,袁紹聽得曹操攻淳于瓊,對袁譚說道:「我趁這時機,把他的大營打破,他就無家可歸了。」就派張郃、高覽去攻曹操的大營,不能破。後來聽得淳于瓊被殺,張郃、高覽就投降了曹操。

  《張郃傳》則說:郃聞曹操攻淳于瓊,勸袁紹派兵往救。郭圖說不如去攻曹操的大營。張郃說:曹操的營很堅固,攻他必不能破。袁紹不聽,而聽了郭圖的話,只派些輕騎去救淳于瓊等,而遣張郃和高覽去攻曹操的大營。果不能破,淳于瓊等卻被曹操殺了。郭圖覺得慚愧,反對袁紹說:「張郃等聞兵敗而喜。」郃等因此畏懼,就去投降曹操。這些話,也都是不實的。

  淳于瓊屯兵之處,名為烏巢,離袁紹的大營只有四十里。倘使來得及救援,袁紹不是兵少分撥不開的,何難一面派兵去攻曹操的大營,一面再多派些兵去救淳于瓊等?曹操的兵不過五千,淳于瓊等的兵已有一萬,袁紹倘使再派馬兵五千名去,也比曹操的兵加出三倍了,何至於還不能敵?倘使還不能敵,相隔四十里,續派大兵何難?何至淳于瓊等還會被殺?可見曹操的攻淳于瓊,是迅雷不及掩耳的。他所以只帶馬、步兵五千,正因兵多容易被人覺察之故。然則當時淳于瓊等被攻的消息傳到袁紹的大營時,怕早已來不及救援。派張郃、高覽去攻曹操的大營,也不過無聊的嘗試而已。袁紹連營數十里,而曹操能分兵和他相持,其兵數雖不如袁紹之多,亦必不能甚少。曹操攻淳于瓊等,不過抽去五千人,何至於大營就不能守呢?據此看來,可見歷史上所傳的情節,多非其真,讀書的人不可不自出手眼了。

  淳于瓊等既破,張郃復降,據《三國志》說:袁紹的兵就因此大潰,袁紹和袁譚都棄軍而走,曹操大獲全勝。這大約因袁紹的兵屯紮日久,銳氣已挫,軍心又不甚安寧,遂至一敗而不可收拾。曹操的攻淳于瓊,固然有膽氣,也只是孤注一擲之舉,其能耐,倒還是在歷久堅守、能挫袁軍的銳氣上見得。軍事的勝敗,固然決於最後五分鐘,也要能夠支持到最後五分鐘,才有決勝的資格哩。

  《三國志·袁紹傳》說:袁紹未出兵之前,田豐勸他分兵多枝,乘虛迭出,曹操救左則擊其右,救右則擊其左,使其軍隊疲於奔命,百姓亦不得安業,不要和他決勝負於一旦。袁紹不聽;顏良、文丑被殺之後,沮授又說:北兵數多而不及南兵之精,南兵糧草缺乏,財力不及北兵的充足,所以南軍利在速戰,北軍利在緩戰,宜用持久之計。袁紹又不聽,以至於敗。這兩說也不確實。

  田豐的話,袁紹固然沒有聽,然而袁紹從四月里和曹操相持,直到八月里才進攻曹營,可謂已充分利用持久之計。當時曹操因軍糧垂盡,議欲退還許都,就是袁紹持久之計的效驗;不幸曹操的兵,實在堅固難於動搖,以致功敗垂成罷了。至於袁紹既進兵,還是用穩紮穩打之博學計,則本來並不冒險,田豐之計聽不聽也無甚關係。所以說歷史上的話,總是不可盡信,我們讀書非自出手眼不可的。

  袁紹兵敗之後,當時北強南弱之勢,遂變為南強北弱。然亦不過南強北弱而已,說曹操的兵力就可以一舉而掃蕩袁紹,那還是不夠的。當時曹操乘勢追擊,冀州郡縣多有投降曹操的。然袁紹回去之後,收合散兵,就又把降曹的郡縣收復了。曹操的用兵是最精銳不過的,倘使力足掃蕩河北,豈肯中途停頓?可見袁紹的兵力也還足以自守。不但如此,當袁紹未敗之時,還分兵給劉備去攻略汝南(漢縣,治平與,今河南汝南縣)。汝南降賊龔都等就做了他的內應。可見袁紹對於擾亂曹操的後方,亦很注意。不過大軍既敗,此等游軍就無甚用處罷了。

  曹操既不能掃蕩河北,就回兵許都。旋又出兵南征。劉備就逃奔劉表,龔都等都逃散了。這是建安六年(公元201年)冬天的事。七年(公元202年)春天,曹操又進兵官渡。這一年五月里,袁紹病死了。手下的人立了他的小兒子袁尚,因此和袁譚兄弟失和。然而曹操進攻,還沒有能夠把他打敗。到建安八年(公元203年)五月,曹操已把攻取河北之事,暫時擱起,回兵許都,八月里,出兵南征劉表了。袁譚和袁尚,卻因曹兵退去,自相攻擊。

  袁譚被袁尚打敗了,派人求救於曹操。曹操見機會不可失,才再回兵攻取河北。從建安九年(公元204年)二月里攻擊袁尚的根據地鄴城(漢鄴縣,今河南臨漳縣),到八月里才攻下。袁尚是本來在外面的,逃到中山(今河北定縣)。此時袁譚已乘機占領了冀州的東部,就去攻擊袁尚,袁尚逃到故安(漢縣,今河北易縣東南)去,依靠袁熙。曹操突然又和袁譚翻臉了。建安十年(公元205年),在南皮縣(今河北南皮縣)地方把他攻殺。袁熙、袁尚逃入烏丸。

  烏丸亦作烏桓,乃是一種異民族,在現今熱河、遼寧境內的,屢次侵犯邊界。建安十一年(公元206年),曹操籌劃出兵去征伐他,在現在河北的東北境辟了兩條水路,以便運糧。十二年(公元207年)七月里出兵,因沿海大水,道路不通。先是劉虞被公孫瓚所殺,他手下的田疇,立意要和他報仇,就帶著宗族,入居徐無山中(在今河北遵化縣西)。避難的人民依附他的很多。田疇替他們立起章程,申明約束,居然很有條理,北邊都很信服他。曹操出兵時,把田疇也招羅在軍中。田疇說:舊北平郡之北,本來有一條路,出盧龍塞到柳城去的(這是從今遵化向東北龍井關的路。柳城,漢縣,在今遼寧興城縣西南)。從後漢以來,路絕不通,然而還有些痕跡。倘使從這一條路出兵,攻其不備,一定可大獲全勝的。曹操聽了他的話,就從這條路出去。果然一戰而殺了三個烏丸的酋長,剩下來一個,和袁熙、袁尚逃到遼東。當時的遼東太守是公孫康,也是要據地自立的,袁熙、袁尚的資格豈能服從他?所以有人勸曹操進兵遼東,曹操就逆料他們不能相容,徑從柳城回兵。果然公孫康把袁熙、袁尚的頭送來了。到此,袁氏才算全滅。

  從建安四年(公元199年)袁曹交兵至此,前後共歷九年,和曹操的破陶謙、呂布、袁術等,前後不過兩三年的,大不相同。所以說袁紹確是曹操的一個勁敵。


關閉