盧循正自得意之際,忽有探子來報說劉裕已回到建康。這讓他的衆黨與都相顧失色。盧循有了退意,說道“劉裕極善用兵,我們繼續前進怕有不利。既然我們已得尋陽,不如再攻下江陵,稱雄一方,然後西聯譙縱,與東晉抗衡!”徐道覆說“不可,如今之勢有進無退。劉裕北伐剛回,精兵猛將損傷不少。我們連戰皆勝,戰士已達十餘萬,以此衆直取建康,勢如破竹。兵士們不惜犯死、攻堅力戰,就是圖的入建康取珍寶財富。如果退守一方,只怕軍士解體,日子一久又使劉裕養成勢力。到時我們恐怕又要去做四處奔逃之賊了。自主公孫恩死後,我們辛苦七載才走到今天,萬不能放棄垂成之功業啊!”盧循猶豫幾日後,最終聽從了徐道覆。
何無忌死難,再加上劉毅大敗,舉朝震恐。而劉裕伐燕,軍士又死傷過萬,病者數倍之,堪再戰者甚少。好在諸葛長民、劉毅弟劉藩等迅速將兵入衛建康,但合兵才萬餘人。劉裕不得不出重財募兵,集兵聚於石頭城。有部下建議到“妖賊來犯,我們應當分兵守住各要害。”“不,”劉裕搖頭說道“賊衆我寡,分兵更弱,且能使敵測我虛實。若一處失利,怕軍心因此沮喪,導致處處皆敗。現集衆兵於石頭城,每日都有應募者前來,可使敵不知我兵之數。臨戰之時再隨機分兵亦不爲晚!”
諸葛長民與司馬德宗都爲賊所嚇破了膽,長民說道“賊衆大舉,已近建康,此地怕是難以保全了,我們還是趕緊奉送皇帝北渡長江以避賊勢吧。先保住晉朝社稷,再緩圖平賊之計。”劉裕極力反對,向長民說道“此言甚爲荒謬。如今強賊逼迫,人人自危,莫有固志,如果皇駕遷動,立成土崩瓦解之勢,江北豈可得至!即便得至,不過遷延數日,苟活而已。賊衆大舉渡江,我們焉能自全?我軍兵士雖少,自足一戰。若能克濟,臣主同安。萬一不克,我當橫屍廟門,遂吾由來以身報國之志,斷不能竄伏草莽以求苟活。吾計已決,卿勿復言!”參軍王仲德贊同劉裕,說道“明公輔佐晉室,又新建大功,威震六合。我想賊衆雖多,本是乘虛而來,聞公凱旋,自當奔潰。若我們自先逃遁,便勢同匹夫,乃取敗之道。”劉裕聽後大喜。
盧循之兵已至秦淮河口,中外戒嚴。當劉裕看到有很多民人臨水觀望賊之情形時,忽然“哈哈哈”大笑數聲。王仲德不解,問道“羣賊已到,大戰在即,明公反而發笑,這是爲何啊!”劉裕撫髯說道“如果民衆怕賊,現在應當急於四處奔散,又怎能有心思隔水觀望。觀此情勢,民心未散,賊徒必敗。我等無需驚慌!”
徐道覆向盧循說道“我們可焚舟登陸,使士有必死之志。然後從新亭至白石分兵數道,急攻劉裕。敵寡我衆,一戰可定乾坤,天下將爲我們所有。”盧循不同意,“劉裕兵士雖少,盡皆精銳,必當與我死戰。殺傷必多,孤注一擲,獨決勝負於一戰,非必勝之道。不如按衆緩兵,慢慢逼之,使其自潰。”徐道覆返回後獨自嘆息道“盧公多疑少決,我終將爲其所誤。若吾能爲英雄驅馳,天下不足定也。”
劉裕對參議們說:“如果賊輩由新亭直進,強攻我軍,其兵衆氣銳,勝敗真的很難說。若其回泊西岸,持重遷延,必將爲我所擒。”劉裕登上石頭城觀望,起初見賊向新亭方向前進,大驚失色,身子都不由得微微顫抖,部下從未見他如此失態過。後來劉裕看到敵船回泊蔡洲,神色才安定了下來,開始佈置諸軍,伐樹木在石頭、淮口處立柵,並修治越城,築造查浦、藥園、廷尉三處堡壘。
盧循在南岸佈下伏兵,留下主力,準備從此處猛攻,而使老弱之卒乘舟駛向白石,揚言要從白石大舉進攻石頭城。劉裕與劉毅、諸葛長民北出石頭拒敵,使沈林子、徐赤特戍南岸保守查浦,戒令堅守勿動。沈林子說“妖賊奸詐,恐其白石之兵乃是疑兵。”劉裕說道“若石頭城被破,臺城立危。不論賊是實是虛,都應重防。南岸之守,賴卿努力。”當盧循東下之前,曾潛派人送信給林子,欲使其從中爲內應。林子將書信交予劉裕,因此劉裕對其極爲信任。
盧循主力進至查浦,沈林子兵不出。盧循派數十名士兵往壘前呼喊叫罵進行挑戰。沈林子仍是堅守不出。盧循兵士謾罵嘲笑不已,“哈哈,都是懦夫”“都不敢出戰”“個個像女人,回家生孩子去吧”……甚者脫光衣服,將屁股對着晉軍進行侮辱。還有的穿上女人衣服作女人姿態“看我這番動作像不像晉朝娘子軍啊?真想看看他們這樣如何能打仗!”徐赤特怒氣難遏,欲要出壘擊賊。林子阻止道“賊揚聲往白石,卻於此急尋一戰,情勢很明顯,其主力部隊一定在此。出戰正中其計,我兵既少,不如守險不出。”
徐赤特怒火攻心,不聽,帶領自己麾下軍士出壘迎戰。接戰不久,盧循伏兵齊出,徐赤特之衆大敗。徐赤特隻身一人逃至水邊,乘船逃往秦淮北岸。盧循率衆肉搏攻壘,沈林子與劉鍾等據柵力戰。賊衆攻擊越來越急,已有部分賊衆拔柵突入,沈林子身當敵衝拼命阻擊,受傷數處,衣甲盡赤。徐道覆遙問林子,“爾忘宗族之仇乎!劉裕殺汝全家,你如今卻爲仇如此賣命。”林子回道“當年我沈氏宗族明珠暗投,誤隨孫恩,家族之人失身於賊,死於戰鬥,並非爲劉公所殺。此乃我家之恥辱。劉公收納我們,給與自新之路,我誓要爲家族雪恥,擊滅爾等孫恩餘孽。”言畢又斫殺敵兵數名。無奈賊衆太多,晉軍漸感不支,多處柵欄被攻破,眼看就要失守!