薑維、馬岱領命而去,帶兵去守劍閣等險要關口。
長史楊儀進軍營稟告諸葛亮:“丞相命令一百天換班,現在已經到期了,漢中大軍已經出川口,前路的公文也到了,在等待接班換班。鹵城現有八萬軍隊,有四萬軍隊該換班了。”
諸葛亮說:“既然有令,可以馬上實施。”手下將士得到這個消息,都收拾行李裝備去了。
這時忽報孫禮領兵二十萬來助戰,司馬懿帶兵來攻鹵城。蜀軍都很害怕。
楊儀說:“敵軍聲勢浩大,換班的士兵先不要換班,一同守城,等打退了敵軍再換班。”
諸葛亮說:“我自從領兵打仗以來就一直以信為本。我既然早先下了軍令,就一定要遵守執行。叫準備換班的軍隊準備啟程,要知道他們的家人正在家門口等候他們平安回到家裏。我軍今天有大難,我決不連累他們!”
那些要換班的蜀軍聽丞相這麼一說,頓時大聲振呼:“丞相大義凜然,我們都不換班回去了,就是拚命也要報答丞相的大恩大德。”
諸葛亮又說:“你們真要留下來抵抗魏軍?”
蜀軍將士都說:“願意以死報國。”
諸葛亮說:“你們既然要留下抗擊敵軍,那麼就先到城外安營駐紮,如果魏軍殺來,你們不要等他們喘息,猛烈地打擊魏軍,這是以逸待勞的辦法。”
蜀軍領命出了城,在城外安營駐紮了下來。
孫禮帶領二十萬軍隊殺上鹵城來,他們不分晝夜地趕路,剛進入鹵城境內,就已經人馬疲乏了,正要下馬在路邊休息,突然四麵喊殺聲大起,蜀軍以逸待勞,英勇殺出。魏軍被殺了一個措手不及,損失巨大,傷亡慘重,大敗而逃。
諸葛亮出了鹵城,下令收兵歸城。這時忽然有永安城守將李嚴手下送來李嚴的密信。諸葛亮打開一看大吃一驚,李嚴在信中說:東吳已經聯合了魏國,情況十分危急,永安城有可能會受到東吳的進攻。
諸葛亮一直擔心東吳乘自己北伐魏國的時候偷擊蜀川,趕忙召集各級將領到軍營中聽從安排。
諸葛亮說:“如果東吳攻打蜀川,我必須馬上回蜀川防備東吳入侵。”
於是命令全軍撤退。張合看見蜀軍撤退,害怕中埋伏,不敢追趕。隻得帶兵回軍營回報司馬懿:“現在蜀軍撤退,不知道有什麼企圖?”司馬懿說:“諸葛亮詭計多端,不要輕舉妄動。我們要堅守陣地,等敵軍沒有糧草,敵軍自然會撤退。”部將魏平站出來說道:“蜀軍從祁山撤退,我們可以乘機追擊。都督按兵不動,害怕蜀軍如同害怕老虎一樣,不怕天下人笑話嗎?”
司馬懿堅決不出兵追趕。
諸葛亮見全軍安全撤回,馬上命令楊儀、馬忠帶領一萬名弓箭手到劍閣木門道埋伏;如果魏軍追到,先用木頭石塊滾到道口切斷魏軍歸路,然後兩頭狂射魏軍。又命令魏延、關興帶兵掩護,城上插滿旗幟,城內亂堆柴草,虛張聲勢。
魏軍巡哨的士兵回報:“蜀軍已經撤出了鹵城,但不知道城裏麵還有多少兵馬。”
司馬懿親自帶兵巡察鹵城情況,他看到城上插滿了旗幟,城中有狼煙燒起,於是笑道:“這是一座空城。”命令手下去探查,果然是空城。司馬懿說:“諸葛亮已經撤退了,誰敢去追?”張合說:“我願意去追。”司馬懿勸阻他:“你性情急躁,不要去。”張合一定要去。司馬懿隻得答應了。
張合追了三十多裏,忽然前後蜀軍殺出,領軍大將是魏延。兩軍交戰,魏延假裝敗走,張合領兵追來。追到半路,又殺出關興,張合奮力追趕,關興假裝敗走。
張合進入木門道,中了蜀軍的埋伏,被山木滾石阻去歸路。諸葛亮在山頭上下令放箭射擊魏軍,張合被射死。
司馬懿得知張合被射死,不由得仰天歎息為張合痛哭。
諸葛亮收兵回朝。