這時,秦惠文王、蜀國侯的騎兵已逃出西鄉邑(縣),昭睢率着的輕騎兵已追到白家壩,雖然雙方都是騎兵,可不知怎麼搞的,秦惠文王、蜀國侯所率的騎兵就是跑得比較慢,而昭睢的輕騎兵追得則比較快,雙方的距離越追越近了。在西鄉,司馬錯的騎兵又被昭睢的楚軍擊敗,潰逃城固關邑。司馬錯敗逃到城固邑(縣),眼看昭睢的輕騎兵就要追上來了,只好急率三千秦軍騎兵、二千蜀軍騎兵和五百守城的蜀軍憑着城固邑(縣)阻擋楚軍騎兵,並下令進者生、退者死,以死掩護秦惠文王、蜀國侯的二萬五千騎兵迅速撤到褒漢(漢中市)。昭睢的大隊輕騎兵趕到城固邑(縣),看見司馬錯立馬橫刀,五千鐵騎列於城下,嚴陣以待。昭睢見狀,隨令一萬鐵騎一字擺開,準備衝殺,四萬騎兵分二路繞過城固邑(縣)兩邊,直奔褒漢(漢中市),活捉秦惠文王、蜀國侯。司馬錯見狀,即令四千騎兵分兩路攔截楚軍騎兵,自率一千騎兵和五百守城步軍,迎戰昭睢的一萬鐵騎。司馬錯的五千騎兵攔截昭睢的五萬騎兵,以一敵十,無疑是以卵擊石。自取滅亡。雖然如此,卻能拖延些時間,好讓秦惠文王、蜀國侯的二萬五千騎兵跑遠。正是這樣,明知是死,也只有以命護主了,這就是司馬錯的棄卒保帥的妙計。石泉鼓兒坪一棄,七萬秦、蜀軍步兵都成了楚軍騎兵的刀下鬼和槍下魂,換來了秦惠文王、蜀國侯逃到這城固邑。今日又得棄這五千騎兵、五百步兵來換秦惠文王、蜀國侯先跑二十多里路。哎!真的是兵敗如山倒,日暮途窮了。
只見昭睢拍馬挺槍衝過來,一萬楚軍鐵騎隨之掩殺過來,司馬錯知道秦、蜀軍中,無人能敵昭睢,只好縱馬揚刀,再次迎戰昭睢。無奈,楚軍勢大,司馬錯的一千騎兵全被衝散,隨不敢戀戰,虛揚一刀,勒轉馬頭,敗回陣去,率着敗兵退進城邑拒敵。可是,只有在後面的二百步兵和三百騎兵來得及衝回城邑,其餘的七百騎兵、三百步兵全被斬殺。昭睢並不下令攻城,而是令楚軍騎兵繞過城邑,直取褒漢(漢中市)。司馬錯見狀,想再衝出去拖住昭睢,被一軍將拉住說:“將軍出去,無疑是飛蛾撲火,枉送性命”。司馬錯痛苦的說:“我以死殉國,能多拖住昭睢的騎兵十多分鐘,大王就可以多跑遠十多里路”。軍將說:“將軍之言差矣,將軍若再出去,昭睢只需分出一千騎兵殺你,照樣率着大軍追趕大王去。將軍一死,請問誰去保護大王,大王若有閃失,將軍雖死難辭其罪。望將軍速從後門逃走,追趕保護大王”。司馬錯聽後說:“若非你提醒,我差點誤了大事”。隨帶着三百秦軍騎兵,急忙從後門逃出,疾奔往秦惠文王的逃路上去。
城邑兩邊的秦、蜀聯軍的四千騎兵拼死阻擋四萬楚軍騎兵,十五分鐘而已,全部戰死。不過,對於騎兵來說,這十五分鐘實在太重要了。因爲有了這十五分鐘,秦惠文王等人就可以多跑遠二十多里路,楚軍騎兵要想追上,就得跑多好長一段時間了。而留在城邑內的二百蜀軍的步兵也在楚軍步軍趕來後被全部消滅掉。秦惠文王、蜀國侯在二萬五千騎兵護衛下一口氣跑到褒漢(漢中市),那裡有三千蜀軍守護着。秦惠文王、蜀國侯一行正待入城,只聽後面一將大聲說:“大王不可進城”!秦惠文王、蜀國侯回頭一看,見司馬錯渾身血跡帶着三百秦軍騎兵已急急趕到跟前。秦惠文王問:“何故不能進城”?司馬錯說:“褒漢(漢中市)地處平原,背臨漢水,無險可據,昭睢的五萬輕騎兵已在二十里外,若大王進城,昭睢大軍一到,圍住城池,等楚懷王大軍一到,那時就是插翅也難飛了”。秦惠文王說:“那依你之見怎樣纔好呢”?司馬錯說:“爲今之計,只有放棄褒漢(漢中市),方能全身而退,大王可率軍速奔略陽(縣),退守隴南,可保無憂,蜀國侯速率本部兵馬渡過漢水,距守南鄭邑(現南鄭縣)。”秦惠文王說:“善”!司馬錯隨率一萬五千三百秦軍騎兵保護秦惠文王奔往略陽(縣),蜀國侯則率一萬蜀軍騎兵和三千守衛褒漢(漢中市)的蜀軍渡過漢水,固守南鄭。等到昭睢的楚軍騎兵趕到褒漢(漢中市),秦惠文王已經過了勉縣,趕往略陽(縣),蜀國侯也已渡過了漢水,趕往新鄭(縣)。昭睢隨率領大軍進駐褒漢(漢中市),等候楚懷王的大軍到來再做定奪。
第二天早上,楚懷王率三萬騎兵和五萬步兵趕到褒漢,再過一天,第三批五萬楚軍押運糧草也趕到褒漢集合。楚懷王到後與昭睢一起觀察周邊地形說:“略陽(縣)本屬褒漢,且是平原,離褒漢(漢中市)不遠,是阻擋秦軍進入褒漢平原的要塞,不能讓秦軍佔住,過河對面的南鄭(縣),三面是山,一面是水,居高臨下,地勢險要,不能讓蜀軍佔據。我的意見是你我各領一軍,趁敵新敗,立腳未穩,打他個措手不及”。昭睢說:“大王!我本有此意,正等你來定奪”。於是,楚懷王令昭睢率領二萬馬軍,二萬步軍,迅速渡過漢水,攻佔南鄭(縣),自己親帥三萬馬軍,二萬步軍,攻取略陽(縣)。其餘的楚軍留守在褒漢(漢中市),並做好隨時的接應。