清朝道光年間,南京江寧府上元縣有個姓於的縣令。此人清正廉潔,喜吃白菜,認為一做人就要像白菜一樣一清二白,百姓稱讚他是個好官,給他取了個綽號叫“於白菜”。
一年秋天,於白菜帶著書童到外微服私訪,來到幕府山下時太陽已經西斜。眼看天色已晚,便來到一個叫孫山田的農戶家中歇息。孫山田夫妻為於白菜炒了一個白菜和南瓜,將就著吃了一頓晚飯。此時天色已晚,孫山田家僅有一間茅屋,無法讓於白菜和小童安歇。
於白菜見孫山田為難,便問他附近是否有破廟可以住一晚。孫山田說,於白菜和小童不怕鬼倒是可以去一個地方住。那個地方距離孫家三四里遠,有三間大瓦房,裡面住著一個又瞎又聾的老婆婆,但是瓦房裡經常鬧鬼。於白菜從不相信這些鬼怪之說,他讓孫山田帶他們去住鬧鬼的房屋。孫山田拿起旱菸杆,帶著於白菜和小童去找鬼屋。
三人走過一座山坡,繞過一汪水塘後,果然在山腳下看到了一幢半舊不新的瓦房。在瓦房門口,一個披頭散髮的老婆婆拄著柺杖,站在門口呼喚著兒子的名字。老婆婆呼喚兒子之聲極為悽慘,聽起來令人毛骨悚然。
於白菜走到老婆婆跟前施禮,請求在瓦房借住一宿。老婆婆並不搭理他們,繼續呼喚著兒子的名字。孫山田告訴於白菜,老婆婆又瞎又聾,說什麼她都聽不見的,只管進去睡一宿,明早起床給她點碎銀子就行。孫山田把於白菜和小童領進了一間房子,點亮蠟燭後告訴他們半夜若聽到什麼奇怪的叫聲千萬不要出去看。
孫山田走後,於白菜便上床躺下了,屋子裡一股濃重的黴味,嗆得人難以入睡。小童倒是趴在桌子上開始打起了呼嚕,此時門外的老婆婆也不知何時停止了哭喊聲。於白菜閉上眼睛強忍著眯了一會兒,恍恍惚惚之中聽到有奇怪的聲音響起。
這聲音奇怪得緊,似乎是憑空產生的,聲音來源像是從地底下發出來的,又像是從院子裡來的。於白菜恍恍惚惚醒來,他立刻想到了老宅子鬧鬼傳說和孫山田臨走時的交代,但他始終認為這世上沒有鬼,於是便去搖醒小童,讓小童起來看看。
小童睡得很沉,於白菜在他的耳邊說房內有一隻絕佳的蛐蛐,讓小童趕緊起床來逮蛐蛐兒。小童對蛐蛐兒最是痴迷,聽說有蛐蛐兒抓後,立刻醒了過來。小童醒來後,忙問於白菜蛐蛐兒在哪兒。於白菜正要說是騙他的,卻發現床上真的有一隻大蛐蛐兒。
小童見到蛐蛐兒,伸手就去逮。蛐蛐兒跳到地上,小童又撲到地上去抓。蛐蛐兒很快消失不見,小童急得不行,拿出小刀挖地磚縫隙尋找。突然小童驚叫起來,於白菜連忙問小童怎麼回事。小童說:“老爺,我摸到了一個軟東西,怪嚇人的。”
於白菜移近蠟燭,又撬開了幾塊地磚,仔細一看,原來白糊糊的石灰堆裡,埋著一條手臂,再撬開幾塊磚頭,發現原來床底下埋著一具屍體。
天亮之後,於白菜讓小童去找來孫山田,向他打聽其中的原委。孫山田夫妻聽罷,沉重地嘆了一口氣,說出了老婆婆家中的變故來:
老婆婆姓孫,年輕時就守了寡,帶著一個兒子艱難度日。兒子叫李正保,就是昨夜她嘴裡呼喊的那個人。去年夏天的某一日,天上突然要下暴雨,李正保扛著鋤頭往家裡跑,在田埂上撞到了一個陌生的老人。李正保把老人揹回了家,老人雖然被撞倒在地,但所幸並無大礙,當天喝了點水後便告辭了。
三日之後,那陌生老人又回來了,老人帶回來兩頭毛驢,一頭毛驢上馱著兩隻沉甸甸的箱子,一頭毛驢上坐著個如花似玉的女子。李正保的好事來了,陌生老人把這個年輕女子嫁給了他,又送給了他不少錢。陌生老人每隔10天便來看望他們一次,李正保對陌生老人感激不已。後來李正保家裡修起了三間大瓦房,日子過得越來越好。
然而,好日子卻不長久。過完年後,李正保就精神失常了,他好像中了邪一般瘋瘋癲癲地。春天到來後,他在暴雨中跑進了幕府山,從此再也沒有出來。李正保失蹤後,媳婦一直守著孫寡婦過日子。這個媳婦姓王,村民們都叫她王姑娘。不知過了多久,王姑娘招了一個姓馬的郎中當了丈夫。王姑娘雖然招了馬郎中上門,但二人還是把孫寡婦當親生母親一樣對待,村民們都說孫寡婦命好,有一個孝順的好兒媳婦。
日子過了一個月後,清明節就快到了,馬郎中帶著王姑娘返回老家祭祖,臨走時二人把孫寡婦交給村民們,希望村民們能照顧幾日。清明節回鄉祭祖是孝順行為,夫妻二人回去祭祖值得讚揚,村民們於是很爽快地答應了他們。
可是馬郎中和王姑娘回鄉祭祖後再也沒有回來,孫寡婦這下徹底傷透了心,她沒日沒夜地以淚洗面,坐在門口喊著兒子和兒媳婦的名字,幾個月下來便變得痴痴呆呆,好在村民們都是好心人,輪流給她送飯並照顧她,不然她早就死了。
於白菜聽了孫家夫婦的講述,認為此案離奇蹊蹺,其中必然隱藏著莫大的隱情。於是便亮明身份,並問孫家夫婦知不知道馬郎中是哪裡人?孫山田說,馬郎中一口江西口音,說話時喜歡用老表稱呼別人。於白菜聽罷,記住了這句話。
地保很快被傳訊到了孫寡婦家裡,於白菜讓他找幾個人移床挖屍,把死者弄出來看看是誰。仵作和地保把地磚全部撬開後,發現磚底下全是石灰粉。用鋤頭把石灰粉挖掉後,從裡面刨出了一具屍體。屍體被石灰包裹,挖出來時沒有腐爛,地保仔細辨認屍體,當即驚叫起來:此人正是李正保!
村民們又陸續前來辨認,證實屍體就是李正保,他身上穿的衣服還是當初結婚時穿的那件呢。當初李正保在暴雨中跑出家門,眾多村民們都看到他瘋瘋癲癲地跑進了幕府山,如今屍體為何會出現在床底下呢?村民們面面相覷,都覺得此事離奇古怪。
於白菜聽說屍體是李正保的,於是讓眾人先瞞住孫寡婦,免得她傷心過度。隨後又讓人搜尋了屋子,在屋子裡找到一把黃楊木梳,一個雞蛋大小的粉團,一隻沒有蓋子的缺口油缸,油缸是個瓷缸子,缸子底下印著“景德鎮”幾個字。在梳妝檯下,又發現了一件胡亂塞著的衣服。
於白菜讓小童把這些東西收齊打包,又交代了地保安排人照顧好孫寡婦等事情,隨後便帶著小童和仵作返回了縣衙。當天晚上,於白菜叫來捕頭宋臣和黃師爺,三人在客廳裡察看了黃楊木梳、鴨蛋粉等物證,一直琢磨到了天亮……
數日之後,江西景德鎮上來了幾個外地客商。其中有一個是專門賣針線、胭脂、撲粉的貨郎,貨郎搖動著串鑼在大街小巷吆喝,引得街上的閨女和媳婦都來圍觀。其中有一妙齡女子前來購買鴨蛋粉,那女子說話是南京口音,拿著鴨蛋粉看看後說貨郎賣的是真貨,比景德鎮上的好很多。貨郎說他是從南京來的商販,鴨蛋粉是從南京進來的,比本地粗製濫造的鴨蛋粉自然要好。
女子見貨郎是從南京來的,便問他南京城近來出了件稀罕事,不知道貨郎知不知道。女子說:傳言南京城外有一孤老婆子,房子突然被天火給燒了,人也被燒死了,卻在後院裡挖出了兩壇金子。官府說金子必須老婆婆的家人才能認領,不知道有沒有這回事?
這個傳言其實是於白菜讓人故意在景德鎮上散播的,傳言像風一樣刮遍了大街小巷,就連閨房中的女子和小媳婦們都知道了。貨郎聽了女子如此關心財寶之事,忙說他知道此事,而且兩大壇金子他也是親眼得見的,縣太爺說現在就等著老婆婆的親人回去認領了。
那女子聽罷,沉默了片刻後又問,若老婆婆只有兒媳還在,兒媳能領到金子嗎?貨郎說兒媳婦也是親人,自然能領得到金子的。女子聽罷不再說話,拿著鴨蛋粉就進了門。貨郎心中已有了數,記下了女子所住的巷子。
這個貨郎就是於白菜假扮的,他斷定買鴨蛋粉的女子就是王姑娘。於白菜推斷,肯定是女子殺了李正保,又勾搭了馬郎中。二人隨後私奔到了江西,把老婆婆一人丟在了家裡。
此時捕頭宋臣進入了客棧,他是和於白菜一起來江西查案的,他假扮成一個算命先生在街上調查,此時正好返回客棧報告情況。於白菜問宋捕頭有何發現?宋捕頭說出了他今早的一番遭遇來:
今天上午,他在鎮上幫人算命,找來幾個小孩子當“媒子”,故意在街上散佈南京發現兩壇金子的事情。由於有事先找來的幾個孩子在一邊幫襯,宋捕頭說得有聲有色、有眉毛有眼睛,惹得街上的閒人都紛紛前來打聽,好像自己就是老婆婆的家人一般。
果然,街上有一個無賴叫陳吉,此人前些日子正和王姑娘勾搭在一起,他知曉王姑娘是從南京來的,也大致猜測得出被燒死的瞎眼老婆婆是王姑娘的婆婆。當他聽到宋捕頭到處散播說發財的人在景德鎮後,認為王姑娘就是那個發財的人,於是打算去找王姑娘,和她一起去南京領回金子。
還有一個叫孫祥,六十多歲年紀,他聽說被燒死的老婆婆姓孫後,想到自己也姓孫,於是便想假冒老婆婆的弟弟去南京領金子。兩個各懷鬼胎的男人找到宋捕頭,請求他幫忙算仔細點,看看他們此行能不能領到金子。
宋捕頭還未開口說話,此時又冒出來一個男子,此人自稱是孫寡婦的兒子李正保。自稱是李正保的男子出現後,嚇得陳吉連忙後退躲避。孫祥卻膽大包天,真像見到了親外甥一般趕緊上前去認親。二人當場親熱地噓寒問暖,把一旁的宋捕頭都搞蒙了。
宋捕頭沒有見過李正保,也不知道李正保的屍體已經被挖出來了,他隨便糊弄了幾個貪財之徒一番,便匆匆趕回客棧向於白菜報告此事。於白菜聽了宋捕頭的話,正準備告訴他李正保已經遇害的事情,此時門外突然有人喊要找宋捕頭看卦。於白菜止住了話 頭,讓來人進來說話。
來人穿得破衣爛衫,蓬頭垢面,一雙手粗糙無比,還有不少裂開的血口。宋捕頭滿臉堆笑地迎下了這個男子,並告訴他於白菜也是來看卦的,讓他不要掛懷,有什麼事情直接說出來就行。男子聽罷,開口說道:小的姓李,名叫李正保,是一個窯工,五月二十五日生於南京,老家在江寧府上元縣……
男子像倒豆子一樣說了一大堆,而且他的口音正是南京口音。於白菜忙問男子,他從南京來景德鎮生活,是否回過老家看望父母?男子聽到這裡落下淚來,他說家裡還有老母和妻子,出門後不曾回去看望。他心中很是想念他們,卻沒有辦法回去。
於白菜問他為何不能回去?男子說他是逃災出來的。於白菜問男子是不是殺了人才逃出來的?男子嚇得面如土色,連忙說他沒有殺人,說罷站起身來就要走。於白菜撫慰了男子一番,請他吃了一頓飯後才將他送走。
送走男子後,宋捕頭說城裡最近出現了兩個李正保,前一個應該是假的。這個李正保有點像是真的,不過也不能確定他是不是為了金子才假裝的。於白菜喝下一杯酒,對宋捕頭說:這個李正保應該是真的,如果是這樣的話,那床底下的屍體是誰的呢?
於白菜決定先調查馬郎中,逮住他和王姑娘再說。此時小童從外面回來報告,原來這次小童也來到了景德鎮,他是宋臣假扮郎中時當“媒子”的孩子之一。小童說他認為孫祥和那個自稱李正保的人是假貨,他們準備去南京領金子,要不要先把他們抓起來。
於白菜說不用抓,只要他還沒有回南京,留守縣衙的黃師爺一定會先把他們抓起來的。眼下必須查清馬郎中和王姑娘的確切下落,逮住他們才能找到突破口。於白菜想起了當初去賣鴨蛋粉的那個巷子,他再次假扮成貨郎去了那個巷子。
於白菜走到巷子口時,突然發現一個年輕男子正從巷子裡的一戶人家走出來,隨後一箇中年男人和當初買鴨蛋粉的那個女子也跟了出來。中年男子指名道姓地罵年輕男子不準再來家裡騷擾,否則就要他的命。男子回罵了幾句,氣沖沖地就走出了巷子。
年輕男子名叫陳吉,於白菜在巷子口攔住了他,並把他帶回了客棧。回到客棧後,陳吉見到宋捕頭後驚訝不已。宋捕頭告訴陳吉,於白菜是他的好友,就是他讓於白菜去請他來的。他已經算好了,陳吉一定能拿到那兩壇金子。如果他能分一點金子給他們,他們一定會助陳吉和王姑娘一臂之力。這正是陳吉想要的,他說出了王姑娘和馬郎中的真實來歷,答應去說服王姑娘,一起去南京領金子。於白菜和宋臣相視一笑,心中有了底。
當天下午,小童傳來訊息:孫祥和那個冒充李正保的男子已經去南京了;宋臣回來說陳吉和王姑娘也動身去南京了;到了上,晚那個來客棧裡算命的李正保也來。於白菜修書一封,讓手下騎著快馬送去南京交給黃師爺,讓他提前做好準備……
數日之後,於白菜回到了南京。黃師爺告訴於白菜,王姑娘、陳吉、孫祥和假的李正保已經被關押起來了。於白菜又讓人把馬郎中和那個窯工李正保從景德鎮押來,當堂一起審問。於白菜先是把假的李正保叫到前面,又把王姑娘叫到他跟前辨認,王姑娘一口否認此人不是她的丈夫。假的李正保當即被識破,原來此人叫孫長江,是景德鎮當地的一個無業遊民。
於白菜隨後又提審了孫祥,孫祥對孫寡婦情況一無所知,孫祥也是一個騙子,當即被衙役提下去關押。此時於白菜又讓衙役把那個叫李正保的窯工押了上來,王姑娘見到窯工後當場放聲痛哭,大喊著這個男子就是她的丈夫李正保。於白菜又讓鄉親們仔細辨認,鄉親們確定此人就是李正保。
李正保沒有死?那當初被殺的人是誰?於白菜說出了一件令人震驚的事情來:
於白菜說,被殺的人的確不是李正保,他的名字叫範遂良。這件事情說起來很長,但必須從頭說起才能說得清楚。在南京城外聚寶門外有家米行,王老闆夫婦有一個十八歲的女兒王小姐,家裡還有一個管賬的年輕賬房和一個抬米的徒弟,抬米的徒弟就是範遂良。後來王姑娘和賬房先生私通,王老闆發現後就辭退了賬房先生,還賭氣說要勒死女兒。
老闆娘心疼女兒,於是讓範遂良把女兒帶走,帶她出去躲一躲。範遂良於是帶走了王小姐,由於範遂良與賬房先生關係很好,便有意成全他們,範遂良於是把王小姐帶去了賬房先生在城南的家裡。王小姐在賬房先生家裡住了幾日後,賬房先生擔心被王老闆發現,於是就到城北的幕府山去找一個朋友商量對策。
然而,賬房先生去幕府山時卻迷了路,那時正好暴雨即將來臨,他在田埂上被跑回家避雨的李正保撞倒,賬房先生倒下田埂昏了過去。後來的事情就比較複雜了,不過好在李正保沒有死,他能說出所有的真相。所以接下來的事情,還是請李正保說吧。
於白菜說罷,眾人把目光朝向了李正保,李正保只好老實交代了他知道的一切:
李正保說,那日他的確撞倒了一個人,當時那個人說他是個姓馬的郎中。幾天之後,馬郎中假扮成老人,帶著一個年輕的女人和財物來到了家裡,並說是給他送來了媳婦和錢財。李正保家貧,自然樂於接受女人和錢財。以後每次馬郎中都會假扮成老人來家裡,馬郎中來家裡時,年輕女人就會把李正保騙出去。馬郎中在家中與年輕女人私會,那個年輕女人就是王小姐,也就是村民口中賢惠的王姑娘。
範遂良成全了王姑娘和馬郎中後,很快就查到了他們的行蹤。範遂良於是經常去找王姑娘和馬郎中要吃要喝,臨走時還要一筆錢。起初王姑娘和馬郎中還是很感激他的,但後來範遂良來的次數多了也就煩了。有時候範遂良來找王姑娘要錢,王姑娘就讓李正保給錢,李正保說他很討厭範遂良,於是就想殺了他。
有一次,範遂良又來要錢了,王姑娘不想見到範遂良,於是去城裡馬郎中家躲避。李正保請範遂良一起喝酒,範遂良率先舉碗就幹了一大碗,結果嘴裡吐出白沫和鮮血出來,倒地身亡了。李正保毒死範遂良正不知如何處理時,剛巧馬郎中來到了李正保家中,他讓李正保不要慌張,不要把這件事情告訴任何人,就連王姑娘也不能說。
當天晚上,李正保和馬郎中把床移開,在床底下挖了一個大坑,馬郎中把範遂良身上的衣服拔下來,換上李正保的衣服和帽子,然後把屍體放入坑裡。屍體放入坑中後,他們又把家裡蓋房子時剩下的石灰全部蓋在屍體上去,又在屍體上蓋了地磚。
做完這些後,馬郎中給了李正保一筆錢,讓他到外面去躲避。李正保只好假裝中邪得病,在暴雨之中跑進了幕府山,後來他來到了景德鎮當窯工。李正保以為自己一輩子就在外面躲藏不回家了,結果在景德鎮被於白菜識破身份,那天晚上他把事情的前因後果說給了於白菜聽。他現在只想一死,死後能埋在母親的墳墓邊上。
李正保說罷,眾人又看向了馬郎中。馬郎中說,他名叫馬成熊,原本是一個郎中。後來米行的王掌櫃缺一個賬房,他就去應聘當了賬房先生。他的確與王小姐私通,並在好友範遂良的幫助下成功私奔出來。後來他去幕府山找朋友商量對策,在田埂上被李正保撞倒。當時李正保喊他一口一個“大伯”,於是他便將計就計,裝成老人來與王姑娘私通。
王姑娘明面上嫁給了李正保,私底下還是和他在一起。馬成熊知道王姑娘這樣難免會讓李正保佔便宜,但是這是沒有辦法的辦法了。王姑娘只好將就應付,大多數時候則以各種藉口躲避李正保。後來範遂良被李正保毒死,李正保又潛逃之後,他就以郎中的身份進入孫寡婦家裡當了上門女婿,名正言順地和王姑娘在一起。
轉眼到了夏天,他擔心埋在床底下的屍體會腐爛發臭,引起官府的注意被通緝,於是他就以清明節祭祖為由帶著王姑娘逃去了景德鎮老家。他在景德鎮老家的王家巷子裡租了房子,又在大街上開了一家醫館給人看病。他在景德鎮上沒有仇人,只有無賴陳吉垂涎王姑娘貌美,時常前來騷擾,因此日子過得還算安穩。昨日他在家中被衙役抓捕,押送到南京受審,現在才知道原來於縣令早就查到他的行蹤了。對於他私通王姑娘的罪行,他願意認罪。
於白菜聽罷,怒拍驚堂木說道:你的罪行怕不只有私通罪吧,你還毒殺了範遂良!馬成熊聽罷大驚,忙說自己並沒有下毒殺人,李正保已經承認是他殺了範遂良,他怎麼又成了兇手了?這簡直令人難以置信。
於白菜說:其實馬成熊要殺的人是李正保,並非範遂良。馬成熊把王姑娘嫁給李正保後,李正保漸漸發現了他和馬成熊的關係,李正保於是對馬成熊好感全失,並漸漸防範起他來。馬成熊認為李正保想將王姑娘獨自霸佔,於是他想把李正保弄傻。
馬成熊先是給李正保送了一些摻了藥的酒給他喝,李正保喝了這些酒後變得神經失常起來,像中了邪一樣。後來村民孫山田見李正保中邪,於是給他請了一個算命先生看了相,算命先生讓他到幕府山去靜養49天。李正保相信了算命先生的話,於是去幕府山搭了一個窩棚居住。
馬成熊得知李正保去了幕府山治病,心中竊喜不已,因為他認為李正保不可能恢復得過來了,他下得藥很重。李正保不死在山中,也會永遠變成傻子。於是他便夜夜與王姑娘私通,李正保的母親又瞎又聾,自然不知道這些事情。
馬成熊的如意算盤還是落空了,李正保十天之後就恢復了神智,提前回到了家中。馬成熊慌了,他把李正保平時喝的治療風溼的藥酒裡的藥包倒出來,換上摻雜了砒霜的藥酒。李正保回家之後,只要喝了藥酒會毒發身亡。
結果那天晚上出了岔子,李正保回家之後範遂良也來到了家裡,王姑娘早早就躲去了城裡。範遂良要吃要喝,李正保在山中養病10天,家裡沒有現成的白酒,只有泡的藥酒可以喝。範遂良說藥酒他也喝得,於是迫不及待地倒起一大碗就喝了下去,結果範遂良當場就被毒死了。
李正保認為範遂良沒有得風溼病,他喝了藥酒引起不良反應毒死了他。此時馬成熊估摸著李正保已經毒發身亡了,於是前來檢視現場,結果發現毒死的是範遂良。毒死範遂良也不是壞事,範遂良也是個難纏的人。馬成熊於是將計就計,把範遂良埋在床底下後,又讓李正保出門逃難。後來馬成熊擔心屍體腐爛,帶著王姑娘逃去了景德鎮,最後還是被抓了。
李正保之所以承認殺死了範遂良,主要是因為他認為老母親已死,所以想求死以陪伴母親。實際上,大火燒房和挖出金子都是於白菜的計謀,孫寡婦並沒有死去。她被黃師爺請到縣衙住了幾天,又在房子附近修了一座假墳,瞞過了所有人的眼睛。
馬成熊聽罷,矢口否認謀害李正保。他說殺人必須有贓物,必須拿出證據來證明,否則他不服。於白菜讓人拿出昔日搜房時找到的那件皺巴巴的衣服,從衣服口袋裡翻出了幾個包藥的紙。王姑娘證實衣服就是馬成熊的,包藥的紙放到水裡給雞喝下後,雞當場被毒死。這就是馬成熊弄來的砒霜藥包,他殺人後把衣服捲起藏在梳妝檯底下,卻沒想到這件衣服要了他的命。馬成熊聽罷,只得承認了殺人罪行。
最後,於白菜對此案進行了判決:馬成熊私通王姑娘,又殺死範遂良,判處斬首之刑,籍沒家產充公;李正保無罪釋放,死囚馬成熊家裡籍沒的財產八成給李正保母子使用;王姑娘水性楊花,不守婦道,當判監禁。但念她是年輕女流,可能受了愚弄,可取保交釋。當時李正保不願再保王姑娘,陳吉願意保下王姑娘。
於白菜便將王姑娘判給陳吉,馬成熊籍沒的家產二成歸給他們二人;孫祥、孫長江二人貪財,但並未做下壞事,當即讓二人在幕府山下開荒種田,准許他們在此地居住生活,二人趕緊磕頭謝恩,感激於白菜大恩收留。此案離奇複雜,結局卻相當暖心,但除了馬成熊殺人被判斬首償命外,其餘人都得到了寬大處理。
判決之後,於白菜對眾人說道:你們都是為了金子來到本縣的,但你們須知,勤勞和本分才是金子,一切貪心妄想都是虛妄,你們日後能改正過錯,必定能找到屬於你們的金子……