司马懿上奏魏主曹睿说:“我曾向您报告,预测诸葛亮一定会从陈仓出兵,所以派郝昭去把守。现在看来,我的预测果然准确。如果诸葛亮从陈仓进攻,他们运粮将会非常方便。幸好有郝昭和王双在那里把守,蜀军不敢从那条路运粮。其他的小路都非常难走,搬运粮食将会非常困难。我计算过,蜀军的粮食只够一个月用,所以他们急于求战。我军只需要坚守阵地,等待他们粮尽自退。陛下可以下诏命令曹真坚守各路关隘,不要出战。不出一个月,蜀军就会自行撤退。那时我们再乘虚攻击,诸葛亮就可以被擒获了。”
曹睿听后非常高兴,说:“你既然有先见之明,为什么不亲自带领一支军队去袭击蜀军呢?”司马懿回答说:“我并不是爱惜自己的生命,而是想保存这些兵力,以防东吴的陆逊。孙权不久必将自立为帝,如果他称帝了,恐怕陛下会派兵讨伐他,他一定会先派兵入侵我国。所以我想留下兵力来对付他。”
正在此时,忽然有近臣来报告说:“曹都督有军情上报。”司马懿说:“陛下可以立刻派人去告诫曹真,让他追击蜀军时,一定要观察清楚敌情,不可深入敌方重地,以免中了诸葛亮的计策。”曹睿立刻下诏,派遣太常卿韩暨持节去告诫曹真:“切不可轻易出战,务必谨慎防守。只等蜀军自行退去后,再乘机攻击他们。”
司马懿送韩暨到城外,嘱咐他说:“我把这个功劳让给曹真了。你见到曹真时,不要说是我的主意,只说是天子下诏让他保守为上。另外,追赶蜀军的人一定要仔细挑选,不要让那些性急气躁的人去追。”韩暨辞别而去。
此时曹真正在升帐议事,忽然报告说天子派遣太常卿韩暨持节到来。曹真出寨迎接韩暨入内接受诏书后退出与郭淮、孙礼商议。郭淮笑着说:“这是司马懿的见解。”曹真问:“这个见解怎么样?”郭淮说:“他深知诸葛亮的用兵方法。以后能够抵御蜀军的必然是司马懿。”曹真说:“如果蜀军不撤退我们又该怎么办?”郭淮说:“可以秘密派人去告诉王双从小路上带兵巡逻蜀军自然就不敢运粮了。等他们粮食耗尽士兵撤退时我们再乘势追击就可以大获全胜。”孙礼说:“我去祁山假装运粮兵车上都装满干柴茅草并灌入硫黄焰硝再让人虚报说陇西运粮队到了。如果蜀军缺粮必然会来抢夺。等他们进入伏击圈后就放火烧车外面再派伏兵夹击就可以打败他们了。”曹真大喜说:“这个计策太好了!”于是立刻命令孙礼带兵按计划行事又派人告诉王双从小路上带兵巡逻郭淮则带兵去箕谷、街亭一带防守并让各路军马守住险要关隘。曹真又命令张辽的儿子张虎为先锋乐进的儿子乐綝为副先锋共同守卫头营不许出战。
而在祁山的蜀军大营中诸葛亮每天都在派人挑战但魏军却坚守不出。诸葛亮召来姜维等人商议说:“魏军坚守不出是因为他们料到我们军中缺粮。现在陈仓的粮道不通其他小路又难走我计算了一下我们随军的粮食不够一个月用的了怎么办呢?”正在大家愁眉不展之时忽然有人来报告说:“陇西的魏军有几千辆运粮车正在祁山之西运粮运粮官是孙礼。”诸葛亮问:“这个孙礼是什么样的人?”有了解魏军情况的人说:“这个人曾经跟随魏主在大石山打猎时忽然惊起一只猛虎直扑魏主孙礼下马拔剑斩杀了猛虎从此被封为上将军是曹真的心腹之人。”诸葛亮笑着说:“这是魏将料到我们缺粮所以用这个计策来引诱我们。车上装载的一定是茅草等引火之物。我平生最擅长用火攻他们却想用这个计策来引诱我吗?如果他们知道我们去劫粮车一定会来偷袭我们的大营。我们可以将计就计行事。”
于是诸葛亮召来马岱吩咐说:“你带三千兵马直接去魏军屯粮的地方但不可进入他们的营寨只在上风头放火。如果烧着了他们的车辆魏军一定会来围攻我们的大营。”同时又派遣马忠、张嶷各带五千兵马在外围策应内外夹攻。三人领命而去。诸葛亮又召来关兴、张苞吩咐说:“魏军的头营连接着四通八达的道路。今晚如果西山火起魏军一定会来偷袭我们的大营。你们两人埋伏在魏寨左右只等他们出兵你们就可以趁机偷袭他们。”接着又召来吴班、吴懿吩咐说:“你们两人各带一军埋伏在营外。如果魏兵来了就可以截断他们的退路。”诸葛亮分派完毕后自己则在祁山上凭高而坐观察战局。
魏军探子察觉到蜀军打算来劫粮,慌忙向孙礼报告,孙礼立刻派人飞马告知曹真。曹真随即派人前往头营,向张虎、乐綝传令:“今夜如果山西方向火起,那必定是蜀军前来劫营。你们可以按照计划行动。”两人领命后,命令士兵登楼专门观察号火。
孙礼将兵马埋伏在山西方向,静待蜀军的到来。是夜二更时分,马岱率领三千精兵悄然抵达,人人口中衔枚,马匹都被勒住口,径直杀向魏营。他们看到魏营中车仗重重叠叠,攒绕成营,车仗上虚插着旌旗。正值西南风起,马岱命令士兵直接去营南放火,霎时间,车仗尽燃,火光冲天。孙礼误以为是蜀军主力到来,急忙引兵杀出,与此同时,魏寨内也放起了号火。
然而,背后却鼓角喧天,两路蜀兵从火光中杀出,原来是马忠、张嶷率军前来,将魏军团团围住。孙礼