让我们再来看看在如此不利的形势下,诸葛亮的历次北伐。
第一次北伐,建兴六年(228年)春,诸葛亮扬声由斜谷道攻取眉县,使赵云、邓芝率一枝兵马为疑军,据箕谷。而诸葛亮自率大军攻祁山。由于事出突然,天水、安定、南安三郡皆叛魏应亮,魏明帝曹睿遣大将军曹真督关右诸军,驻眉县。令右将军张合率五万步骑增援陇上。蜀军先锋马谡在街亭被张合所破,蜀军进无所据,拔西县千余家回汉中。此战过后,诸葛亮自贬三等,以亮为右将军,行丞相事,所总统如前。
第二次北伐,建兴六年(228年)冬,诸葛亮利用东吴陆逊在石亭大破魏大司马曹休之际,复出军攻魏。十二月,诸葛亮引兵出散关,围陈仓。因为曹魏方面已经有所准备,“使将军郝昭、王生守陈仓,治其城”(见《曹真传》)。郝昭据城坚守,诸葛亮围城20余日,粮尽而还。魏将王双率骑追赶,被亮设伏所杀。
第三次北伐。建兴七年(229年)春,诸葛亮遣陈式攻武都、阴平,魏雍州刺史郭淮率众欲击式。诸葛亮自出至建威,郭淮退还,遂克定二郡。冬,亮徙府营於南山下原上,筑汉、乐二城。
第四次北伐。建兴八年(230年)七月,魏使司马懿由西城,张郃由子午,曹真由斜谷,数道并进,会攻汉中。会天大雨三十余日,阻碍了魏军的进攻。蜀军以逸待劳,诸葛亮一方面积极组织防御力量,调李严率军2万增援汉中,自己亲率大军屯成固、赤坂迎敌。另一方面积极筹画反攻力量。他令魏延、吴壹西入羌中南安界,大破魏后将军费瑶、雍州刺吏郭淮于阳溪。
第五次北伐,建兴九年(231年)二月, 诸葛亮率军再次进围祁山,以新造之木牛运粮,令李严总督后勤粮草。此时,魏大司马曹真有疾,魏明帝令司马懿代真屯长安,督雍凉二州诸军事,统张合、戴陵、费瑶、郭淮,兵发祁山。诸葛亮率军于上圭迎击司马懿,初战诸葛亮击败魏将郭淮、费瑶,并乘胜大收上圭小麦以做军粮。在上圭东与司马懿想遇,懿敛兵依险,亮不得战,引军还。司马懿引军随亮,至西城,始终不与诸葛亮交战。魏将贾栩、魏平数请战,懿不允。诸将因曰“公畏蜀如虎,奈天下笑”(见《诸葛亮传》注引《汉晋春秋》)。五月司马懿使张合攻蜀将王平于祁山南屯,自己率主力进攻诸葛亮。诸葛亮令魏延。吴班、高翔迎战,大破魏军,“获甲首三千级、玄铠五千领,角弩三千一百张”。懿回营固守。祁山南屯方面,蜀将王平守备得法,张合进攻不克,亦回军。六月,蜀军因运粮不继退军,司马懿强使张合追击蜀军,张合不得已,遂进。追至木门中蜀军伏击,张合中箭而亡。
第六次北伐,诸葛亮鉴于每次北伐,皆因粮尽退军,故于建兴九年(231年)后,就劝兵讲武,作木牛、流马,运米集斜谷口,治斜谷邸阁;息兵三年,以做战时所用。建兴十二年(234年)二月,诸葛亮调动所能征发的军队,出斜谷,遣使约东吴孙权同时出兵,共伐曹魏。蜀军到达眉县后,屯于渭水之南。司马懿亦引军渡渭,背水为垒以拒亮。司马懿仍沿用坚守不出,待蜀军粮尽而退的办法,而诸葛亮也“分兵屯田,为久驻之基”。两军相拒百余日,诸葛亮数次挑战,懿始终不出。亮送巾帼妇人之服至懿处,懿故意上表请战,以搪塞诸将。蜀军与魏军相持半年有余,于当年八月,诸葛亮积劳成疾,病逝于军中,享年五十四岁。司马懿得知此消息,率军追赶。蜀将姜维令杨仪反旗鸣鼓,做反击状,懿不敢逼。蜀军得以结阵而去,入斜谷后发丧。百姓为之谚曰:“死诸葛能退生仲达。”懿因此自嘲道:“吾能科生,不便料死也。”(见《诸葛亮传》注引《汉晋春秋》)。及蜀军退,懿巡视蜀军营垒处,叹道“天下奇才也!”(见《诸葛亮传》)