晉惠帝元康九年(299年),賈后與太子遹的矛盾激化了,最後終於發展到太子被廢為庶人,而這一結局又導致了宗室諸王的紛爭,引起了從永康二年(301年)到光熙元年(306年)的皇族大混戰。
賈后的母親廣城君郭槐常勸女兒善待太子。她見賈謐與太子口角爭執,總是責備賈謐。她還想把外孫女(韓壽、賈午的女兒)嫁給太子,但賈后和賈午都不肯。臨死之前,這個老太太還再三叮囑女兒好好對待太子。她是看到問題的嚴重性的,可惜賈后一點也聽不進。賈后嫁了個白痴皇帝,自然很不樂意。她和太醫令程據私通,又使人到外面誘騙青年男子,將他們藏在箱子裡,送到宮內,與自己淫樂。這些男子除個別外,為防洩密,事後多被殺害。賈模對賈后的行為非常不滿。他擔心一旦出事,自己也要遭殃。他多次同她講明利害關係,非但絲毫無效,反而引起她的反感,對他日益疏遠。
裴頠對局勢也很擔心,他甚至於同賈模、張華商議,要採取非常手段,廢黜賈后,立太子的母親謝淑妃為皇后。但賈、張兩人都以為不妥,他們認為倘使皇帝不以為然,怎麼應付,又怕宗室諸王勢力強大,如果他們參與進來,會引起大禍。裴頠承認他們說得對,只認為照賈后這樣胡作非為,恐怕隨時會出亂子。但張華不這樣看,他說:“兩位和中宮(指皇后)都是親戚,不妨隨時勸誡,庶兒不致造成大錯,那麼天下不會大亂,吾輩總可以優遊卒歲吧!”張華是晉初智謀出眾的人物,這時卻以為眼前尚無大礙,自己估計餘年無幾(張華時年六十八歲),可以平安度過,又不肯急流勇退,終於招致殺身之禍,後人不能不為之嘆惜。
太子左右也有人主張先下手為強。東宮有左右前後四個衛率,所統兵員有萬人之多。照左衛率劉卞的意見,只要張華肯作主,用東宮兵力擁太子進宮錄尚書事,廢賈后,把她押進金墉城,只需要兩個宦官就可以了。但是張華不贊成,他推說沒有聽見過賈后有廢太子的打算,又說廢后奪權是無君無父的不孝行為。太子本人也不聽左右廢后的主張。劉卞的意見不久就傳了出去,他被調任外宮。他料想賈后不會放過他,就服毒而死。據宋元之際注《資治通鑑》的胡三省估計就是張華揭發了他,否則賈后不會不追究聞而不告之罪。這個估計是合乎情理的。
賈后決計對太子下手了。這年十二月,她詐稱惠帝患病,召太子入內。太子進了內宮,賈后不見,卻令宮婢陳舞詐傳惠帝的命令,逼他喝下三升酒。太子說喝不了那麼多酒,陳舞說不喝就是不孝。太子無奈,勉強喝了下去,就此大醉昏迷。賈后已經使潘岳起草了一封太子給惠帝的“密件”,內容有“陛下當自了,不自了,吾當人了之。中宮又宜速自了,不自了,吾當手了之。並與謝妃刻期兩發……”等話。她派一名年小的宮婢,拿了紙筆,說是惠帝命他照抄一份。太子在昏迷狀態中,也不明白是什麼內容,照式寫了。他醉中握筆不穩,認字不清,筆畫也寫得不全,根本無法辨認。賈后把筆畫補全,拿去給惠帝看,說這是太子勸父親殺賈后的密信。
十二月三十日,白痴皇帝呆呆地坐在殿上,眾公卿奉命入見。又是那個宦官董猛,他手持兩張紙,一張是太子“密書”,另一張是寫好“今賜死”的青紙詔書,給公卿觀看。公卿看了,目瞪口呆。殿上寂靜無聲了好大一會。張華見沒有人肯先開口,只得硬著頭皮,說:“這是國家的大禍。自古以來,常因廢出正嫡而導致喪亂,而且大晉開國,年數還不很長,更宜慎重,望陛下詳察!”他避開“密書”真偽這一要害,用意不言而喻。然裴頠年輕(時年三十三歲),就抓住要害發言,他認為一要查出傳“密書”的人,二要核對筆跡。賈后立即拿出十多份太子寫的文書。大家核對過後,沒有人敢說不對。賈后又使董猛向惠帝假傳武帝之女長廣公主的意見:“事情該從速解決,臣下有不從詔書的,應該軍法從事。”儘管這樣,公卿畢竟誰也不肯或不敢隨聲附和,眼看日頭已西,還是議而不決。賈后怕生意外,就親自上表請廢太子為庶人:公卿不敢再持異議,事情方才了結。這天正是大除夕,太子司馬遹改換了服色,拜受詔書,徒步出東宮,坐上一輛簡陋的牛車,和妃子王氏及三個兒子,被押送到金墉城去。王氏是大名士、尚書令王衍的女兒。這個丈人立即上表,請求準其女兒離婚,也立即得到准許。王氏無奈,痛哭回家,此後,太子的生母謝淑妃也立即被殺。次年(永康元年,300年)正月,太子又被押赴許昌幽禁。
賈后除去了多年的心病,正在洋洋得意之際,不料事變突起,被廢身死。發動事變的主角是趙王倫,他是司馬懿最小的兒子,當時應有六七十歲了。第三篇裡已經說過,此人愚魯無知,辦事一味聽信心腹孫秀的話。這次也不例外,所以真正的主角是孫秀。
太子被廢后,東宮的一些舊屬就想推翻賈后,恢復太子的地位。他們見趙王倫任右軍將軍,手裡有兵,便去遊說孫秀。孫秀何等狡詐,他知趙王倫一向依附賈后,心想如能事成,儘管是為太子立了大功,但將來如何,畢竟還難預料,不如先讓賈后把太子害了,然後推翻賈后,那麼天下便是趙王的了。他把這番意思去打動趙王,趙王非常高興,立刻表示同意。
事情定下後,孫秀秘密使人散佈流言,說殿中有些將士打算廢黜皇后,迎立太子,還故意讓賈后派在民間打探訊息的人聽到。賈后知道了,很是擔心。趙王倫和孫秀便勸賈后殺死太子,以絕禍根。賈后上了他們的當,派宦官孫慮到許昌毒殺太子。太子不肯服毒,竟被孫慮活活打死。這是永康元年(300年)三月間的事情。
趙王倫、孫秀決定於四月初三夜一更天起事。這天白天,孫秀先派參與密謀的軍官右衛督司馬雅去見張華,要他與趙王合作,為天下除害。張華不肯,堅決拒絕。司馬雅大怒而去,張華的命運也就此決定了。
當晚一更,趙王來到宮城,矯詔向宿衛將士宣告:“中宮和賈謐等殺害太子,今使車騎(趙王倫的宮職是車騎將軍)入廢中宮,汝等皆當從命。”將士聽命,立即開啟宮門,趙王倫派齊王司馬冏(司馬攸死後,兒子冏繼承王爵,他和惠帝是堂房弟兄)率將士一百人進入內宮,先斬了賈謐。賈后看見齊王,大驚,問道:“卿為何而來?”齊王答雲;“有詔收後。”賈后竟說:“詔書當從我出,這算什麼詔書!”這當然是白說。她隨即被廢為庶人,押解到金墉城居住。六天之後,她被勒令喝下一杯金屑酒而死,時年四十五歲。賈后的死黨董猛、孫慮、程據等自然都被處死,張華、裴頠也都被殺。張華臨刑,仍自稱忠臣,監斬官斥他:“身為宰相,廢太子時,何以不能死節?”他回答說,當時的話,都有案可查。監斬官又道:“諫而不從,何不去位?”張華就無言可答了。一代奇士,終遭殺身滅族之禍,壞就壞在貪戀權位這一點上。但是《晉書》本傳贊他“忠於亂世,自古為難”,也不能說沒有一定的道理。
趙王倫自稱“使持節、都督中外諸軍事、相國、侍中,一依宣、文輔魏故事”。這一自稱的官銜有兩點顯示了非常的野心。一是相國這官名,這是晉廷未曾設定過的,而魏末司馬昭做的正是這個官;二是依宣(宣帝司馬懿)、文(文帝司馬昭)輔魏故事,司馬懿父子輔魏是為代魏作準備。趙王倫事實上已經把取代惠帝的存心昭告於天下了。
他用孫秀為中書令。這個出身小吏的傢伙頓時成為全國威權最高的顯赫人物。人們都知道,有事該求孫秀,不必再去求趙王。
可是政局並不穩定。事變之前,朝中曾有立惠帝的兄弟淮南王司馬允為皇太弟的說法。趙王倫奪了權,擔心這個侄孫會造他的反,便封他為驃騎將軍,讓他領中護軍,以此籠絡。後來發現他在畜養敢死之士,知道籠絡不住,便想對他下手。八月,調他做太尉,解除其領中護軍的職務,以削其兵權,不讓他帶兵。但淮南王允拒絕接受。於是,孫秀派御史帶了“詔書”前去逼迫。淮南王看那“詔書”,竟是孫秀的筆跡,他大發雷霆,即率所統七百兵士,直向皇宮殺去,一路上響應的人很多。他到了宮前,因宮門緊閉,無法入內,便轉而圍攻趙王倫所在的相府。這一天,從上午起,激戰了將近四個時辰。最後,一名宿衛兵將領受趙王黨羽的唆使,帶了幾百兵來,詐稱“有詔助淮南王”,乘其不備,殺死淮南王允。這次事變,連同被牽連而死的有好幾千人。這個小戰役是宗室內戰的第一仗。不過,淮南王允並沒有算在“八王”之內。
事後,孫秀藉此大發淫威,打擊素有嫌隙的人士,潘岳、石崇是其中最有名的兩個。孫秀地位低微的時候,曾在潘岳手下當差,受過幾次責打。又石崇有個愛妾叫綠珠,孫秀曾指名向石崇討要,石崇不給。石崇的外甥歐陽建又與趙王倫不睦。這時孫秀便誣稱這三人是淮南王允的同黨,將其三族全部處死。兵士到石家時,石崇對綠珠說:“我是為你得的罪。”綠珠道:“我當為君而死。”她跳樓自殺,孫秀終究得不到這個美人。
趙王倫篡位的企圖日益明顯。不久,他蹈襲曹魏代漢、晉代曹魏的先例,以惠帝下詔的形式,給自己加“九錫”(一般指車馬、衣服、樂器、朱戶[門漆紅色]、納陛[陛,宮殿的臺階。放在簷下,使登升的人不在露天升陛]、虎賁百人、鐵、弓矢、秬鬯[用黑黍和鬱金香釀造的祭祀用酒]。具體內容歷代不盡相同),另外擴充相府的軍隊,增加到三萬人。
永康二年(301年)正月,趙王倫即位稱帝,改元建始,把惠帝遷往金墉城居住。形勢決定他這個皇帝是做不長的。當時,鎮守鄴(今河北臨漳西南)的成都王司馬穎、鎮守關中的河間王司馬顒、鎮守許昌的齊王司馬冏,都有相當的實力。他們都不肯讓趙王倫做皇帝。
三月,齊王冏率先起兵,號召討伐趙王倫、孫秀。成都王穎聽了鄴令盧志的話,認為以順討逆,一定會受百姓擁護,於是起兵,第一個響應齊王。他的兄長常山王司馬乂又繼之以起,因其封地常山(今河北正定西南)在鄴的北面,所以他帶的兵是成都王穎的後隊。河間王顒是司馬懿弟司馬孚的孫子,他與宗室關係比較疏遠,開頭有點舉棋不定,先打算擁護趙王倫,並已鎮壓了一個反趙王的太守,把齊王冏派來的使者押起來,解往洛陽,令部將張方領兵幫助趙王倫。兵到華陰,得到齊王、成都王兵勢浩大的情報,才改變宗旨,令張方率兵投人二王的陣營。
三王(如連常山王,即為四王)協力,形成了壓倒的優勢。洛陽方面分兵迎敵,南北兩條戰線,都先勝後敗。成都王穎在初戰失利後,信心有些動搖,得諮議參軍盧志的勸說,才堅持戰鬥,結果,湨水(在今豫北的黃河支流)一戰,大破號令不一的敵軍,成都王穎乘勝揮軍渡河,向洛陽推進。
洛陽得到河北兵敗的訊息,立時陷入混亂狀態。四月初九,宿衛軍左衛將軍王輿等率部七百多人進宮,得到宮內將士響應,殺孫秀等,逼趙王倫寫“詔”,恭迎惠帝復位。次日,惠帝回宮,改元永寧元年,接著,派使者慰勞三王,責令趙王倫自殺。他是八王中第三個離開人世的。趙王所派抵禦齊、成都二王的將領,有的已在洛陽被殺,大部分投降,其餘皆被處死。
這次戰爭,持續兩個月左右,戰死近十萬人,是皇族大混戰的開始,也是它的第一個段落。
惠帝改元永寧,但是晉室卻不得安寧,而且越來越混亂。成都王等先後到了洛陽,論功行賞,以齊王冏為大司馬,加九錫;成都王穎為大將軍、錄尚書事,也加九錫;河間王顒為侍中、太尉,加三錫;常山王乂為撫軍大將軍,領左軍,不久又改封為長沙王。這幾個人中,成都、長沙二王都是惠帝的兄弟,長沙王只比成都王長三歲,都是二十多歲的青年;齊王是惠帝的堂房弟兄,時當中年。而河間王則比惠帝和上述三王都長一輩。他們都立了“大功”,對權力地位的慾望也都隨之膨脹起來,很難再和平共處了。如齊王和成都王都加了“九錫”,這種安排,休說那個白痴皇帝難以安於其位,就是他們兩個,為了誰能再高升一步,也非爭到兵戎相見不可。因此,不久就開始了皇族混戰的第二階段。
有人勸齊王冏說;“如果不能與成都王同心輔政,就該剝奪他的兵權。”長沙王乂則認為大權應掌握在武帝的兒子手裡,即勸成都王抓權。盧志比主子聰明,主張以退為進,勸成都王應以母親程太妃身體欠佳為理由,須回鄴侍病,讓齊王獨掌朝政。這一著果是上策,天下人都稱讚成都王司馬穎是個賢王。他回到鄴地,又聽從盧志的策略,推掉九錫之賜,還要求運河北的米去救濟齊王所部及戰地受難的百姓;又弔祭陣亡將士,收葬趙王兵士的骸骨,由此他的聲望越來越高。然而,他雖則生得漂亮,卻不過是個沒有多少文化、智力平庸的二十三歲的年輕人,何嘗有治國平天下的才幹!
齊王冏獨專朝政,興造府第,宴樂無度。天下有識之士都知道會發生變故,他任用的江東名士張翰、顧榮都藉故脫身。張翰字季鷹,吳郡吳人,他因秋風起,推說思菰菜、鱸魚,辭了齊王,浩然南歸。顧榮無法脫身,便天天喝酒裝醉。
這個局面維持了一年半多一點。惠帝永寧二年(302年),河間王顒首先發難,他上表聲稱要和成都王等共會洛陽,請在洛陽的長沙王剝奪齊王的權力,由成都王代齊王輔政。同時,派張方領兵開往洛陽。十二月二十二日,表到洛陽,城裡就爆發了一場混戰。長沙王又帶一百多人進宮,說“大司馬謀反”,即用惠帝名義號召討伐齊王冏。齊王同派兵火燒宮門,又派人執騶虞幡到處叫喊:“長沙王矯詔!”長沙王又即把惠帝“請”到宮城門樓上,用來證明自己確係秉承惠帝的詔書行事。這天夜裡,洛陽城裡,火光沖天,如同白晝,兩軍混戰,箭一直落到白痴皇帝的身邊。混戰持續了三天,長沙王又大獲全勝,並抓住齊王冏,把他斬了。這是“八王之亂”中死掉的第四個王。
此戰結束後,紀年改元太安。後來,史書上都稱這年為太安元年,其實,這年已經只剩幾天了。
長沙王又在洛陽掌權後,起初他還常派人到鄴,徵求成都王的意見,可日子久了,弟兄間的關係逐漸變壞起來,於是出現了成都、河間二王聯合反長沙王乂的戰爭。這是皇族混戰的第三個段落。
太安二年八月,河間王顒起兵討長沙王乂。他派張方率兵七萬,出函谷關向洛陽進攻。成都王穎在反齊王同時,已經準備響應,但因事變解決得快,沒有來得及加入,這番決意要參加進去。盧志勸他,不要因此而喪失以往博得的好聲望,參軍邵續也勸他不要與自己的兄長為敵。他一概不聽,派陸機率王粹、牽秀、石超等將,統兵二十餘萬,南下進逼洛陽。
洛陽得報,下詔以長沙王乂為太尉、都督中外諸軍事,領兵抵禦。詔書說:“吾當親率六軍以誅奸逆”。惠帝還出洛陽城,巡視過幾處營地。這是長沙王又利用皇帝來張大聲勢。這個白痴皇帝無非是受人擺佈罷了。
這一回,仗打大了,打得時間長了,從九月起,打到年底,竟還沒有結束。成都王穎的兵力雖大,卻在洛陽周圍屢戰屢敗。十月,建春門(洛陽城東面北頭的第一門)之戰,長沙王又帶上惠帝指揮作戰,大破陸機軍的主力,斬大將十六人。陸機部下將領都是“北土舊人”,不願意受他節度。成都王穎的親信宦官孟玖和機、雲兄弟向有私怨。孟玖的兄弟孟超在做將官帶兵時,曾因部下犯法,與陸機衝突,就造謠說陸機要謀反,還寫信給孟玖告狀。他在戰役中不聽號令,擅自進兵,被敵軍所殺。孟玖懷疑是被陸機所害,便向成都王穎進讒言,說陸機有二心,勾結長沙王,牽秀等幾個將領都幫孟玖作偽證。成都王穎相信了他們的謊話,即派人到營殺了陸機,又逮捕陸雲,也把他殺掉。這是明顯的冤案,陸雲更是與兵敗之事毫無關係。陸機幕府中的正直之士如王彰,就說得很清楚,“機,吳人,殿下用之太過,北土舊將皆疾之耳。”陸雲被害前,蔡克向成都王叩頭流血,說陸雲是為孟玖所怨,人人都知道,求他免陸雲一死。成都王的心思有點鬆動了,孟玖見了,馬上一面把主子扶入內堂,一面催手下動手。成都王用陸機為大將,是一錯;聽讒言殺陸機,是再錯;進而殺陸雲,是三錯。看他的行為,簡單得像是受孟玖操縱的傀儡,這種昏王如何成得大事!只可惜陸氏兄弟不能效法張翰、顧榮,以致白白送了性命。陸機臨死時說:“華亭鶴唳,可復聞乎!”但是他覺悟得太遲了。
張方很能打仗,但也有勝有敗。九月,他一度攻入京城,大肆搶掠後退出。十月,長沙王乂帶著惠帝,進行反擊。專制時代,皇帝真有點威懾作用,張方部下的將士望見車駕,紛紛後退。張方打了個大敗仗,退到城西的十三里橋。這時,部下還想後撤,張方卻反其道而行之,乘敵人戰勝後疏於防備的機會,在夜裡寂靜無聲地推進到離城七里的地方,並築起好幾重壁壘。城裡發覺後,發兵來攻,因工事堅團,不能得手。
戰局陷入了相持狀態。洛陽城裡的人力物力都出現了問題。兵源缺乏,只得徵發家奴;十三歲以上的男孩都要服勞役了,米價漲到了每石一萬文錢。東晉初以擊揖渡江聞名的祖逖,這時是長沙王乂的主簿,他獻一條計:派人到西北去,命雍州刺史劉沈起兵襲擊河間王顒的後方,使他不得不召回張方,以解京城之危。雍州的治所在臨涇(今甘肅鎮原東南),轄有七郡地方(在今陝西、甘肅、寧夏各一部)。這是一條好計,然而用得遲了,已經來不及挽救洛陽的危局。
太安三年(304年)正月二十五日,正在張方覺得打下去沒有把握,考慮撤退的時候,洛陽發生內變。東海王司馬越聯絡不願意再戰的宿衛將校,把長沙王乂扣留。次日,東海王越請惠帝下詔,罷免司馬乂的官職,改元為永安元年,開城停戰。這一次,打了半年多仗(從九月到正月,中間有個閏十二月),死的人不計其數。
張方入城,東海王越即把長沙王乂交給了他。張方這人極其殘酷,竟把他放在火上,活活烤死。張方部下的軍士看了,也覺得太慘,流下了眼淚。長沙王又是“八王之亂”中死掉的第五個王。
獲得勝利果實的是成都王穎。他的軍隊戰績並不好,損失了六七萬人,但是他儼然以勝利者的姿態進入洛陽,命部將石超等率兵五萬,鎮守洛陽十二座城門,他本人不留駐洛陽,仍回鄴城。
河間王顒的後方一度吃緊,長安險些被劉沈的軍隊佔領,為此他不得不趕緊召回張方。張方擄了洛陽的官私奴婢一萬多人西回,途中缺糧,就殺人與牛馬同煮,分而食之。到了關中,他派部將打敗了劉沈軍,又生擒劉沈。河間王顒將劉沈先用鞭打,然後處死。
三月,應河間王顒的要求,惠帝下詔立成都王穎為皇太弟,成都王離帝位只有一步之遙了。然而,他沒有人君之度的真相早已被人看穿,所以局勢又很快發生變化,爆發了以東海王越為主角的皇族大混戰,這是混戰第四個也是最後一個段落。
同年(這時還稱永安元年)七月,東海王越宣佈討伐成都王穎,石超聞訊趕奔回鄴。東海王越挾了惠帝,一同北征,兵到蕩陰(今河南湯陰西南),被石超擊敗。混戰時,可憐那個皇帝而部受傷,身中三箭,跌在亂草之中。這時文官嵇紹(嵇康的兒子)身穿朝服,跨上御輦,意欲護衛皇帝,結果被兵士所殺,鮮血濺到惠帝的袍上。惠帝雖則低能,還有點良心,以後一直儲存這件袍子,不準洗濯,作為紀念。戰後,惠帝被迎送到鄴,把年號又改作建武。這是幾個月裡的第三個年號了。
東海王越逃回到封地東海(今山東郊城北),拒絕成都王穎提出和解的要求,聯絡各方,意欲再起。這時,洛陽已落到了張方的手中。原來,河間王顒得了東海王越北征的訊息,就派張方去攻洛陽,牽制他的後方。洛陽留守的兵力薄弱,張方得手後,河間王顒就命他鎮守洛陽。
東海王越要破成都、河間二王,原本極為困難,但都督幽州諸軍事王浚的插手,給他提供了機會。
王浚是個心有圖謀的小人。當年三王聯合反趙王倫時,他看不准誰勝誰敗,便禁止所部士民應三王招募,以坐觀成敗。他也想稱霸割據,但苦於實力不足,便把一個女兒嫁給鮮卑段氏的首領段務勿塵,請朝廷封段務勿塵為遼西公;又把另一個女兒嫁給鮮卑宇文氏別部的首領素怒延。利用鮮卑部落的騎兵來參加內地的混戰,是他早已打定的主意。他和成都王穎都有消滅對方的打算。這年七月,王浚聯合鮮卑、烏桓的兵力,與東海王越的兄弟東贏公司馬騰合作,南下攻鄴。
成都王穎派石超等北上抵禦。八月,石超等連戰都敗。鄴中得訊,百官士卒紛紛逃走,全城陷入一片混亂。盧志勸成都王擁惠帝退回洛陽,成都王答應了,盧志並連夜做好了準備。不料成都王的母親程太妃不肯離開鄴中,成都王不能當機立斷,耽誤了時刻。將士們都想快逃,見出發號令遲延不發,便自行散去。原來一萬五千人的隊伍,一下子只剩幾十個人。成都王沒奈何,只帶得幾十名騎兵,與盧志護著惠帝坐的御用牛車(晉時多用牛車,有的很考究,牛也跑得很快),往洛陽而去。倉猝之間,他們忘了帶錢,只有一名宦官身邊有三千文錢。流亡途中,要吃飯非用錢去買不可,這幾十個人只能半飢半飽抵過這幾天工夫。渡過黃河以後,洛陽有兵來接,情況才有所改善。行近洛陽,張方出城來迎。他才下馬要拜見皇帝,可惠帝先已下車,並要他免禮。這時,皇帝、親王、太妃等人,都有了一種脫難的感覺,然而他們不能高興得太早了,還有大災大難在等著他們。他們把張方看作救星,其實張方卻包藏著禍心。
洛陽的事情,一切都聽張方作主,成都王穎的話,沒有人肯聽。在洛陽住了幾個月,張方的兵士把城裡的財富搶得差不多了,便都想回關中老家。十一月初一,張方帶兵上殿。惠帝見他來意不善,逃到後園竹林中躲起來,仍被兵士拖出逼上牛車。惠帝無可奈何,只要求安排車輛,以裝載宮人、寶物。宮裡本來並未遭劫,這一回卻被張方的將士把財物搶得精光,宮女也被擄去。張方還想放火燒燬宮室宗廟,幸而盧志勸他不要效學董卓的行為,百年以後,還被人唾罵(董卓曾燒燬洛陽全城房屋,時在漢獻帝初平元年[190年],去此一百十四年),張方才打消這念頭。
惠帝到了長安,把河間王的徵西將軍府作為行宮。十二月,下詔罷免成都王穎的皇太弟身份,另立豫章王熾做皇太弟,以河間王顒都督中外諸軍事,又改元永興。連“太安”在內,這是本年的第四個年號。這些舉動當然都是河間王顒作的主。
可局勢仍不穩定。張方“劫遷車駕”之舉很不得人心。永興二年(305年)七月,東海王越以“糾集義旅,奉迎天子,還復舊都”為由,號召四方,起兵征討河間王顒和張方,王浚等響應者即推他做盟主。這時成都王穎的舊將公師藩也在河北起兵,攻城略地,聲勢不小。
河間王顒見公師藩起兵,即命成都王穎都督河北諸軍事,令其招撫。十二月,成都王穎到了洛陽,因兵力薄弱,無法渡河北上,只得停止前進。其時,東海王越的軍隊已經進至陽武(今河南原陽東南),離洛陽已不滿三百里路了。
永興三年(306年)正月,河間王顒見形勢險惡,便想與東海王越和解。張方知道自己罪大,恐怕和解以後,會追究他劫掠宮室劫遷車駕之罪,就竭力反對。於是河間王顒即遣張方的熟人那輔,以送信為名去見張方,乘他看信的時候,把他砍死。
河間王顒把張方的頭顱送到東海王越軍前,請求和解。東海王越不許,繼續西進。此時成都王穎在洛陽立足不住,狼狽西走,到了華陰,才知有河間王求和之事,便不敢再回長安,只得暫時停下,觀望形勢。
五月,東海王越所派的祁弘等軍進入關中,擊敗河間王軍,佔領長安。河間王顒匹馬逃到太白山中,百官也都逃到山裡,拾橡實充飢。祁弘是王浚部下,由王浚派去幫東海王越的。他帶的鮮卑騎兵在長安城中燒殺擄掠,殺了兩萬多人。
六月,惠帝被祁弘挾持到洛陽,算是“還復舊都”,便又改元光熙。這幾年多次變更年號,史籍上往往以最後改定者為正式年號,害得看書的人眼花繚亂,實在頭疼極了。
八月,東海王越任太傅、錄尚書事,掌握了朝政。他是“八王之亂”的最後勝利者。但是這勝利不能保持得長久,因為天下己亂,不可能再恢復承平的時勢了。
還有一點餘波。在祁弘入關之時,成都王穎東竄西逃,宛如喪家之犬,最後在投奔公師藩的途中,被人擒獲,解到他的老基地鄴中被殺,年僅二十八歲。之前,他的官屬只有盧志始終跟著他不走,最後料理了他的後事。河間王顒於祁弘退兵後,即回到長安。十二月,他奉東海王越命赴洛陽,在半路上被南陽王司馬模(越之弟)的部將所殺。這二王是“八王之亂”中死的第六、第七個王。
白痴皇帝也於十一月中死去,相傳是被東海王越毒死的。皇太弟司馬熾即位,是為晉懷帝。
綿延十六年的“八王之亂”終於結束了。