明崇祯八年(1635年)八月中旬,陕西明军在洪承畴指挥下,以巨大的代价保住了西安城。而陕西义军也付出了惨重的代价,取得了击毙曹文诏的重大胜利,但终未能实现攻取西安的战役目标。
陕西的血战引起了远在京师的崇祯的忧虑。他看到洪承畴自任五省总督以来十个月时间,疲于奔命,左支右绌。虽然勉强保住了西安,但中原的“流寇”基本上无暇顾及。看来只靠一个洪承畴是搞不定“流寇”了,必须得再委派一员得力大将参与“剿贼”。在经过一番深思熟虑之后,他选中了卢象升。
卢象升自崇祯六年开始“剿寇”以来,屡战屡胜,能力突出。崇祯认为,用他来和洪承畴一起“剿贼”,应该能起到互帮互助的作用。于是乎,这年的八月二十六日,崇祯下旨,提升卢象升为“五省总理”,统领山西、河南、湖广、四川、南直隶五省的兵马,并赐尚方宝剑,加兵部侍郎衔。而老洪那边,崇祯还是继续让他保留着“五省总督”的头衔,但只负责“专剿陕西”。这实际上还是陕西“三边总督”,真正的大头交到了卢象升这边。
除了人事调整,崇祯又抓紧调兵遣将。他下旨将正在宁远防御后金的副总兵祖宽升任援剿总兵,率其三千关宁铁骑南下中原,听从卢象升调遣。
祖宽此人原是辽东名将祖大寿家的一个家奴,因为胆大勇猛,硬是一步步从一个奴才晋升到了副总兵的位置。他手下的兵并不多,只有三千余人。但这三千多人大多都是从塞外归附明朝的蒙古人,他们个个善于骑射、勇猛彪悍,上了阵就是一门心思杀敌,没其他明军那么多花花肠子。因此,这支队伍堪称是明军中的一支王牌军。
在崇祯紧锣密鼓进行人事和兵力调动的时候,陕西的义军也在发生分化。
八月的大战结束后,西安没能拿下,而明军援军又陆续到达,防卫力量得到增强,因此义军在九月间的几次主动攻势都未取得什么进展。如果义军的大队人马继续留在残破不堪的陕西,人吃马嚼就是问题。因此义军首领们决定继续东出河南,以获取急需的补给。但是,由于几路人马行动上步调不一致,在十月间高迎祥、张献忠等部渡过渭河,从潼关南原冲出陕西进入河南时,李自成部还在渭河以北没来得及渡河。结果李自成被洪承畴的人马堵在了渭河以北,只好改变原定计划,转而向东走,准备东渡黄河进入山西。但山西方面早已沿河严密布防,李自成根本找不到渡河船只,只好等黄河封冻再过河。不成想这年冬天又是个暖冬,黄河迟迟不封冻。李自成在黄河边“魔力转圈圈”转了两个来月,始终过不了河。
而在这段时间内,洪承畴的人马已经得到了补充和增强。而且其他几路“流寇”都跑出陕西了,老洪因此能够集中力量对付李自成,这样李自成日子就更难过了。
自崇祯九年(1636年)正月到七月,李自成一直处于明军的追击之下,陷于“疲于奔命”的状态之中。这期间,他虽然在五月打了个胜仗,攻克了家乡米脂县,在家乡父老面前风风光光祭了祖坟。但没爽三天明军就来了,只好继续跑路。
危难时刻,李自成的爱将“翻山鹞”高杰又拐着李自成的小妾,拉着自己的人马去投奔了洪承畴。既当“二五仔”,又送你绿帽子。从此,高杰就成了李自成最痛恨的死敌。
而高迎祥等人这边儿也不好过。
自崇祯八年十月间出了陕西,重进河南之后,高迎祥等人很快就感受到了不同以往的压力。
此时,卢象升已经就任五省总理,并对各路明军进行了初步的整顿,祖宽所率的关宁铁骑也已经到达河南,明军实力和士气都大为回升,高迎祥等人要面对的将是一个非常困难的局面。
十一月份,义军首先攻击阌乡,卢象升派祖宽率关宁铁骑前去救援。双方在阌乡东郊的焦村相遇,一场激战下来,义军被噶了数百个人头,知道了对方的厉害,赶紧解除了包围向东南方向转移。祖宽的关宁铁骑穷追不舍,终于在嵩县境内的九皋山下追上了义军。双方一场混战,义军又被噶了九百多个人头,再次败走。
连续两次被祖宽击败,高迎祥等人十分恼火,集中全部人马,在洛阳以南的龙门镇摆下阵势,号称三十万人,“连营六十里”,决心同祖宽拼个高下。没想到此战又被祖宽的关宁铁骑趁夜偷袭,一下被噶了一千多个人头。同时卢象升又从各路调来人马,准备围歼义军。高迎祥等人见势不妙,只得向东南方向撤走。结果跑到汝州境内的圪料镇时,又被关宁铁骑追上,一家伙又被噶了一千六百多个人头。十二月上旬义军跑到豫东南的确山,想攻下县城捞一把,结果又是关宁铁骑赶到,一战又被噶了五百八十多个人头。
祖宽的关宁铁骑实在是太猛了,高迎祥等人连战连败,不但兵力损失严重,士气也低落至极点。高迎祥认为,如果再这样下去,队伍迟早要完蛋。这眼下河南是呆不住了,只能向东再进南直隶。
十二月中旬,高迎祥和张献忠合兵东进南直隶,包围了庐州府(今安徽合肥),但打了七天七夜硬是没打下来,只好撤围而去。他们向东攻下了巢县、含山,又围攻全椒,打算拿下全椒后找机会渡过长江,直取明朝的陪都南京。
形势如此紧张,卢象升当然不敢怠慢,年都不过了,日夜兼程,在大年初一从河南赶到了凤阳,调集各路兵马进行围剿。高迎祥和张献忠一看明军援军已到,南京方面也加强了戒备,只好放弃了渡江的打算,解除了对全椒的包围,北上又开始围攻滁州府。滁州军民拼死抵抗,苦苦支撑到正月初八,城池即将被攻破。
就在这天黎明时分,卢象升率领的大军终于赶到了滁州城东五里桥。祖宽和他的三千关宁铁骑一马当先,冲在全军最前面。卢象升亲率三百家丁居中,指挥各军向前冲杀。这场恶战,从黎明一直杀到天黑,义军终于支撑不住,全军溃散。卢象升指挥明军紧追不舍,一直从滁州城东追击到西北的关山脚下,“积尸填沟委堑,滁水为不流”。高迎祥张献忠等率领亲兵部队趁夜色才勉强逃脱追击。
滁州大战之后,义军主力损失过半,士气大伤。高迎祥想来想去,决定北上再偷袭一次中都凤阳,一方面捞点物资补充一下损失,一方面振作一下士气。没成想这次明军早做了准备,漕运总督朱大典亲率一万余明军驻守凤阳,高迎祥一看这架势,打都没敢打,直接掉头往西走了。
义军后有卢象升大军追击,前有朱大典堵截,几乎陷入绝境。然而,朱大典此时却毫无大局意识——他只顾守住凤阳,保护好凤阳皇陵,唯恐出兵追击会被“流寇”趁虚而入,因此眼睁睁地看着义军向西经怀远奔宿州,下萧县,最后又跑回了河南。
卢象升急得直跳脚,但也无可奈何,只得闷头继续猛追。此时,高迎祥在滁州惨败之后,靠着“闯王”的名号,一路上又获得了不少各路“土寇”的“加盟”,实力又有所恢复。在河南境内连续攻州克县,甚至威胁到了省城开封。二月间,卢象升的大军终于在开封以南的朱仙镇追上了高迎祥,一场大战下来,高迎祥毫无悬念地又一次大败,全军向南阳方向败退。卢象升穷追不舍,终于在南阳境内的七顶山追上了义军,又送给义军一场惨败的“大礼”。至此,高迎祥手下的精锐已经损失大半,战斗力大减,张献忠也是元气大伤。两人被迫决定分兵逃亡:张献忠向东跑进桐柏山区躲藏,高迎祥则向西奔郧阳山区。