公元1639年农历5月,张献忠举起起义大旗,大学士杨嗣昌被派来督率官军。
楊嗣昌坐镇襄阳,统率十万大军,气势汹汹。他采用“十面拉网”的战略,企图将农民军一网打尽。张献忠则采取游击战略,忽东忽西,声东击西,将明军打得晕头转向。但因内部出了奸细,张献忠被官军围困在玛瑙山,吃个大败仗,家属也被俘虏。
张献忠突围向西后,重新集结兵力,带着一千多人,像旋风一样冲进四川,转战巴西、成都、泸州。杨嗣昌没将张献忠看在眼里,他带着重兵追到四川,进驻重庆。他的监军提醒他:“张献忠可能回兵向东突袭,不能不防备。最好派支人马阻止他回的道路。”杨嗣昌不听,命令所有将领都入川追敌。
北起广元,南到泸州,西起成都,东到巫山、门,张献忠军队在四川境内到处活动,攻县城,杀贪官。大批官军来了,他们就转移,几乎把跟在后面的官军拖垮。公元1641年正月,明将猛如虎、刘士杰打探到张献忠在开县的黄陵城,就尽快追上来,却中了张献忠埋伏,全军覆没,刘士杰也战死了。
没等杨嗣昌回过神来,张献忠又突然向东杀来。一天一夜急奔三四百里。路上遇到一支官军阻击,张献忠没有与他们纠缠,分一支军队去抵挡,自己率领轻骑兵,继续向东,直奔襄阳。
杨嗣昌这才着急起来,赶快派使者赶去襄阳传达命令:加强防守,等待大军回援。然而使者半路上被农民军捉住。张献忠立即派人带上杨嗣昌的文书、兵符,冒充使者,先混进了襄阳城。夜里,混进城里的农民军突然到处放火,城内一片混乱。他们又在乱中打开城门,大批农民军立即冲进城里。杨嗣昌的辎重全被农民军夺取。