12北魏设置天地四方六部大人,由各位公爵担任。(胡三省注:诸公指当时位居公爵及位同公爵的人。)
13秋季,七月,太尉刘裕到达陕县。沈田子、傅弘之进入武关(今陕西丹凤县东南),后秦的戍守将领都弃城逃走。沈田子等人进军屯驻青泥(今陕西蓝田县南),后秦主姚泓派遣给事黄门侍郎姚和都屯驻嶢柳(今陕西蓝田县南)抵御他们。
14西秦相国翟勍去世;八月,任命尚书令昙达为左丞相,左仆射元基为右丞相,御史大夫麴景为尚书令,侍中翟绍为左仆射。(胡三省注:翟勍去世后,昙达等人都按顺序升迁,《通鉴》根据西秦的旧史记载。)
15太尉刘裕到达閺乡(今河南灵宝市西北)。沈田子等人准备攻打嶢柳,后秦主姚泓想亲自率领军队抵御刘裕的大军,担心沈田子等人袭击他的后方,想先消灭沈田子等人,然后倾全国之力向东出兵;于是率领步兵、骑兵数万人,突然到达青泥。沈田子本来是作为疑兵,所统领的士兵只有一千多人,听说姚泓到来,想攻打他;傅弘之认为寡不敌众,阻止他,沈田子说:“用兵贵在出奇制胜,不必在于人多。况且现在双方兵力悬殊,势不两立,如果他们把我们包围得坚固,那么我们就无处可逃了。不如乘他们刚到,营阵还没有摆好,先逼近他们,可能会有功绩。”于是率领所统领的士兵先进攻,傅弘之随后跟进。后秦军队把他们包围了好几层。沈田子安抚士兵说:“各位冒险远道而来,只为求今天的战斗,生死在此一举,封侯的功业就在这里了!”士兵们都踊跃呐喊,手持短兵器奋勇攻击,后秦军队大败,(胡三省注:沈田子用一千多人打败姚泓数万人,是因为把士兵置于死地,人人都为自己作战。)斩杀一万多人,缴获了姚泓的车驾、服饰等物品,姚泓逃奔回灞上(今陕西西安市东)。
起初,刘裕因为沈田子等人的兵力少,派遣沈林子领兵从秦岭(今陕西西安以南的秦岭山脉,胡三省注:班固《西都赋》说“前乘秦岭”,从这里出蓝田关。刘裕大概派遣沈林子从阳华沿着山向西南到秦岭。)前往援助他们,沈林子到达时,后秦军队已经战败,于是一起追击,关中的郡县大多暗中向沈田子表示归附。
辛丑日(初二),太尉刘裕到达潼关,任命朱超石为河东太守,让他和振武将军徐猗之在黄河以北与薛帛会合,一起攻打蒲阪。后秦平原公姚璞和姚和都(胡三省注:可能是姚成都,姚和都在青泥战败后逃奔到蒲阪)一起攻打他们,徐猗之战败而死,朱超石逃奔回潼关。东平公姚赞派遣司马国璠率领北魏军队尾随在刘裕后面。
王镇恶请求率领水军从黄河进入渭水奔赴长安,刘裕同意了。后秦恢武将军姚难从香城(今陕西大荔县东南,渭水北岸)领兵向西,王镇恶追击他;后秦主姚泓从灞上领兵返回屯驻石桥(在今陕西西安市西北,胡三省注:石桥镇在长安城北洛门东北,有石桥,《水经注》记载石桥水南出马岭山,北流经郑城西,水上有桥,东距郑城十里,所以世人以桥命名水。《三辅黄图》说:洛门是长安城北出东头第一门。)作为姚难的援兵,镇北将军姚强和姚难合兵屯驻在泾水岸边(今陕西高陵县境,泾水在此处注入渭水)抵御王镇恶。王镇恶派毛德祖进攻,打败了他们,姚强战死,姚难逃奔长安。
东平公姚赞后退屯驻郑城(今陕西华县),太尉刘裕进军逼近他。姚泓派姚丕守卫渭桥(今陕西咸阳市东),胡翼度屯驻石积(今陕西西安市西北),东平公姚赞屯驻灞水以东,姚泓屯驻逍遥园(今陕西西安市西北,胡三省注:沈水上接樊川皇子陂,向北流经长安城西,与昆明池水汇合。它的支流向东北流,经过邓艾祠南,又向东分成两条水,一条流入逍遥园。)。
王镇恶逆渭水而上,乘坐蒙冲小舰,划船的人都在舰内;后秦人见舰只前进却没有划船的人,都惊奇地以为是神。壬戌日(二十三日)早晨,王镇恶到达渭桥,命令士兵吃完饭后,都拿着兵器上岸,后上岸的人斩首。士兵们都上岸后,渭水水流湍急,舰只都顺流而下,很快就不见了。当时姚泓所率领的士兵还有数万人。王镇恶告诉士兵说:“我们都家在江南,这里是长安的北门,离家万里,船只、衣服、粮食都已经顺流而去。现在进军作战如果胜利,那么功名都能显扬;如果失败,那么尸骨都不能返回,没有其他退路。(胡三省注:岐指旁边分出的道路。)你们要努力!”于是亲自带头冲锋,士兵们奋勇争先,在渭桥大败姚丕。姚泓领兵救援,被姚丕的败兵冲击践踏,不战而溃;姚谌等人都战死,姚泓单人匹马返回皇宫。王镇恶从平朔门(长安城北门,胡三省注:汉时没有平朔门,大概是长安城北门,后人改的名字。)进入长安,姚泓和姚裕等数百骑兵逃奔到石桥。东平公姚赞听说姚泓战败,领兵前来救援,部众溃散;胡翼度向太尉刘裕投降。
姚泓准备出城投降,他的儿子佛念,年仅十一岁,对姚泓说:“晋人将会放纵他们的欲望,我们即使投降也必定不能幸免,不如自杀。