後來,各路援兵依次趕到,其中有一個巾幗英雄,是石駐宣撫司的女總兵秦良玉。秦良玉是忠州人,曾經嫁給宣撫使馬千乘,馬千乘病死之後,秦良玉因為通曉兵事,就代他做了統領。奢崇明一直欽佩她的英名,起兵的時候曾經厚贈秦良玉,想讓她暗中幫助。秦良玉對來使說:“你沒聽說過我秦氏世代忠貞嗎?我兄長秦邦屏、秦邦翰奉旨援遼,都戰死沙場。隻有我弟弟秦民屏負傷歸來,現在傷已痊愈,我正準備帶著他誓死報國,你們這些逆賊,敢來壞我的名聲!”說完,將所贈金銀全部退還來使。來使出言不遜,秦良玉立即拔出佩劍,將他砍成兩段。秦良玉率領部下的精兵,與弟弟秦民屏、侄子秦翼明等人偷偷趕到重慶,然後將兵馬分成兩隊。一隊由秦翼明率領,屯守在南坪關,截擊賊兵的退路,還留下一千多人,打著旗幟護守忠州,作為南坪關的掎角。自己帶著三千精銳,沿江而上,直逼成都,在離城幾裏的地方安營紮寨。奢崇明父子見援兵趕來,馬上分頭攔阻,並率兵輪番攻城。從初冬一直到暮冬,一年就要結束了,奢崇明仍然屢攻不止。
春節剛過,賊兵的攻勢鬆懈下來,朱燮元剛剛下城休息,忽然城上的守兵大喊:“旱船來了,請主帥速速登城!”朱燮元急忙上城樓,隻見下麵有數千名悍賊,從林中鼓噪而出,擁著一個像大船一樣的東西。這船有一丈多高,長約五百尺,裏麵築了好幾層樓。上麵站著一個人,披發仗劍,中間還載著數百人,各自帶著弓弩毒箭。大船用牛牽著,馬上就要逼近城池。看到那東西比城樓還高出好幾尺,守城的老弱婦孺頓時大哭起來。朱燮元急忙安慰他們:“不妨,不妨,這是呂公車,可以馬上攻破的。”隨即命令守兵,“我已經備下巨木,一直擱置在城下,無論大小全部取來!”守兵們趕忙將它運來,由朱燮元親自指點,長的做杆,短的做軸,軸上麵有粗繩,轉動起來可以發出大炮,大炮的彈丸都是一千多斤的石塊。這邊裝好大炮後,那邊的呂公車剛好趕來,第一炮轟過去,擊毀了車旁邊的雲樓;第二炮轟過去,不偏不倚,正中那披發仗劍的賊目。這滿車的人都靠他一人指揮,他被擊斃後,車中的人都成了傀儡。朱燮元又用大炮擊牛,牛負痛逃回,衝破了賊兵的陣勢。朱燮元乘勢出擊,大殺一陣,隨即回城。
奢崇明父子仍然不肯退兵。這時,有人報稱賊兵的將領羅乾象願意棄暗投明。朱燮元就派人請他前來。羅乾象來了之後,朱燮元便在城樓上和他喝酒,喝得酩酊大醉,又讓他和自己一起就寢。羅乾象見朱燮元如此信任自己,感激不盡,發誓以死相報。朱燮元和他約好,讓他誘奢崇明登城,然後設下埋伏等待。羅乾象離開後,果然就在當晚帶著奢崇明登城。奢崇明見事情不妙,轉身逃走,伏兵追出來的時候,隻抓住了他的幾名隨從。羅乾象縱火焚營,奢崇明父子在倉促間逃到瀘州。成都解圍後,羅乾象率兵投奔明廷,朝廷升他為四川巡撫。之後大軍又接連收複州、縣、衛、所四十多座,然後乘勝攻打重慶。
這時候,重慶已經被樊龍占據了九個多月,賊兵守衛森嚴。從二郎關到佛圖關是出入重慶的要道,樊龍派了幾萬賊兵扼守,連營十七座。總兵杜文、監軍副使邱誌充、楊述程等人率兵進攻,連戰不下。秦良玉建議從小路繞出關後,然後兩路夾擊。朱燮元聽後非常讚同,馬上命秦良玉帶領部下,從小路繞去。賊兵隻顧前不顧後,沒料到後麵竟來了一位女將軍,鐵甲銀槍,騎著一匹白馬,在營後麾軍直入,亂殺亂砍,無人敢擋。前麵的杜文等人這時也殺入賊營,敵兵阻攔不住,大潰而逃,官兵連破二郎、佛圖兩關,直搗重慶。樊龍出戰不利,守了幾天,因為糧道被斷,城中沒有食物,隻好開門逃走。誰知跑了不到一裏地,就聽到四麵八方都是“樊賊休走”的聲音。