大名有個秀才,叫楊萬石,生平最怕老婆。妻子姓尹,性情出奇地凶悍。丈夫稍微違背了她,她就用鞭子毒打。楊萬石的父親已經六十多歲了,是一個鰥夫,尹氏拿他當奴僕看待。楊萬石和弟弟楊萬鍾常常偷點飯給父親吃,不敢讓尹氏知道。但因為父親常年穿著破衣爛衫,衣不蔽體,恐怕讓人笑話,所以,兄弟二人從不讓父親見客人。楊萬石四十多歲了,還沒有兒子,娶了個姓王的妾,兩人從早到晚都不敢說一句話。
一次,楊氏兄弟二人到郡城等候鄉試。遇見一個少年,容貌俊雅瀟灑,二人便跟他交談起來,談得很投機。問他的姓名,少年說:「姓馬,名叫介甫。」從此後,三人交往更加密切,不久,便結義成了兄弟。分別後,大約過了半年,馬介甫忽然帶著童僕前來拜訪楊萬石兄弟。正巧遇上楊萬石的父親坐在大門外,一邊曬太陽一邊捉虱子。馬介甫以為他是楊家的僕人,便說了自己的姓名,讓他去通報主人,楊父便披上破棉衣進去了。有人告訴馬介甫:「這老頭就是楊萬石的父親。」馬介甫正在驚訝,楊萬石兄弟二人穿戴得整整齊齊迎出門來。進屋行過禮後,馬介甫便請求拜見義父。楊萬石推辭說父親偶然得了點病,不能見客,連連讓馬介甫坐下。
三人談笑著,不知不覺天已黑了。楊萬石說了多次已準備好了酒飯,卻一直不見端上來。兄弟二人輪番出出進進好幾次,才見有個瘦弱的僕人捧了把酒壺進來。一會兒酒便喝完了。又坐等了很久,楊萬石頻頻地出去催促,急得滿頭大汗。又過了很久,才見那個瘦弱僕人送來飯。但飯做得實在不好吃,讓人難以下嚥。吃完飯,楊萬石急匆匆地走了。楊萬鍾抱來床被子,陪客人住宿。馬介甫責備他說:「過去我以為你們兄弟二人有很高的品德,才和你們結拜兄弟。現在老父親實際上吃不飽穿不暖,讓路人見了都替你們羞愧!」楊萬鍾流下淚來,說:「這其中的心事,實在難以出口。家門不幸,娶進了一個凶悍的嫂子,全家男女老少橫遭摧殘。如不是至親好友,也不敢宣揚這件家醜。」馬介甫驚歎了一會兒,說:「我本來打算明天一早就走。現在既然聽你說了這樁奇異的事,倒不能不親眼看一看。請你們借我一間空房子,我自己起伙做飯。」楊萬鍾聽從了,打掃了一間屋子,讓他住下。夜深後,又從家裡偷來些蔬菜糧食,惟恐尹氏知道。馬介甫明白他的意思,極力推辭不要。還把楊父請來,一起吃住。自己又進城去街市上買了布匹,替楊父做了新衣換上,父子三人都感動得哭泣起來。
楊萬鍾有個兒子叫喜兒,才七歲,夜裡跟著爺爺和馬介甫睡。馬介甫撫弄著他說:「這孩子將來的福氣壽數,要超過他父親;只是少年時要受點苦難。」尹氏聽說楊老漢竟然安安穩穩地有飯吃了,大怒,動不動就高聲叫罵,說馬介甫強行干涉她的家務事。起初還在自己屋裡罵,漸漸地就在馬介甫的屋子附近罵起來,故意讓馬聽到。楊氏兄弟二人急得汗流浹背,猶豫著不敢去制止。但馬介甫對罵聲卻充耳不聞。
楊萬石的妾王氏,懷孕五個月了,尹氏才知道。她大發淫威,將王氏的衣服剝掉一頓毒打。打完,又喊楊萬石來,讓他跪在地上,扎上一條女人頭巾,然後拿起鞭子往家門外趕。當時,正好馬介甫站在外面,揚萬石羞慚地不敢出去。尹氏用鞭子抽打著,逼他出去。楊萬石忍受不了,只得跑出屋子,尹氏也隨後追出來,雙手叉腰,跳著腳大罵不止,圍觀的人擠滿了大街。馬介甫用手指著尹氏,大聲喝斥說:「回去!回去!」尹氏不由自主地返身便跑,像被鬼攆著一樣,鞋子都跑丟了,裹腳布彎彎曲曲地拖在路上,赤著腳跑回了家,面如死灰。稍定了定神,奴婢拿來鞋襪讓她換上,尹氏才號啕大哭起來,家裡的人誰也不敢勸她。
馬介甫拉過楊萬石,要替他摘下頭巾。楊萬石站在那裡一動不動,大氣不敢出,像是怕頭巾掉下來。馬介甫硬給他摘下來後,他還坐立不安,唯恐私摘頭巾,要罪加一等。一直等到尹氏哭完了,楊萬石才敢回家,提心吊膽地慢慢蹭了回去。尹氏見了他,默默地一句話沒說,突然站起身,回房中睡覺去了。楊萬石才放下心來,與弟弟都暗暗感到奇怪。家人也都感到驚異,湊在一起嘰嘰咕咕。尹氏聽到一些,更加羞慚惱怒,將奴婢逐個打了一遍,又喊叫王氏。王氏上次被打傷了,一直臥床不起,尹氏說她偽裝,跑到王氏的床前將她一頓暴打,直打得下身鮮血湧出流了產。楊萬石在沒人的地方,對著馬介甫悲傷地痛哭。馬介甫勸慰了一番,叫童僕備下酒菜,二人對飲,已經二更天了,仍然不放楊萬石回去。
尹氏一人在臥室裡,痛恨丈夫不回來,正在大發脾氣,忽然聽到一陣撬門聲。她急忙呼叫奴婢,屋門已經大開,有個巨人走了進來,身影遮擋了整個屋子,面貌猙獰兇惡,像鬼一樣。轉眼間又進來幾個人,手裡都持著明晃晃的刀。尹氏嚇得差點死過去,剛想號叫,巨人用刀尖一下頂住她的脖頸,說:「敢叫,立即殺了你!」尹氏急忙拿出金銀綢緞,要買條命。巨人說:「我是陰司的使者,不要錢,特來取你這個悍婦的心!」尹氏更加恐懼,跪在地上連連磕頭,直磕得頭破血流。巨人毫不理會,一邊用刀一下下劃著她的胸膛,一邊數落她的罪狀說:「像某件事,你說該殺不該殺?」說一件,就劃一刀;把尹氏的凶悍罪狀列舉完,刀子已在她的胸口處劃了幾十下。最後,巨人說:「王氏生了孩子,也是你的後代,你怎麼竟殘忍到把她打墮了胎?這件事絕對不能饒恕!」命那幾個人將她的手反綁起來,要給她開膛破肚,挖出心看看。尹氏嚇得叩頭求饒,連連說已經知罪了,巨人才饒了她。一會兒聽到大門開關的聲音,巨人說:「楊萬石回來了。你既然已經悔過,姑且先留下你這條命吧!」說完,都消失不見了。楊萬石進屋來,見尹氏赤身裸體地被反綁著,心窩上的刀痕縱橫交錯,多得數不過來。便解開她詢問緣故,得知事情經過,非常驚駭,暗地裡懷疑是馬介甫干的。
第二天,楊萬石向馬介甫講述了昨晚的怪事,馬介甫也流露出驚駭的樣子。自那以後,尹氏的威風逐漸收斂了,連續幾個月沒再罵人。馬介甫非常高興,這才告訴楊萬石說:「我實話告訴你,你不要洩露出去:前次是我用了點小小的法術,嚇唬她一下。現在她既然已經改正,你們又和好了,我也就暫時告辭了!」他便收拾行裝走了。
從此後,尹氏每天傍晚都主動挽留丈夫作伴,滿臉堆笑地迎合他。楊萬石終生沒受過這般優待,突然之間真是受寵若驚,坐立不安,不知該怎麼辦好。有天晚上,尹氏想起那巨人的樣子,還嚇得瑟瑟發抖。楊萬石想討好她,洩露了那巨人是假的。尹氏一聽,一骨碌坐起身,窮根究底地追問他。楊萬石自知失言,後悔也晚了,只得實說了。尹氏勃然大怒,破口大罵起來。楊萬石害怕,跪在床下不起來,尹氏不理。楊哀求到三更,尹氏才說:「想叫我饒了你,你必須自己用刀在你心口處也劃上那麼多口子,我才解恨!」於是起身到廚房拿菜刀。楊萬石大為恐懼,連忙逃出了屋子。尹氏握著刀追趕出來,鬧得雞飛狗跳,一家人全都起來了。楊萬鍾不知是什麼緣故,只是用身子左右擋護著哥哥。尹氏正在叫罵著,忽見楊老漢也走過來;又見他穿著嶄新的袍服,更加暴怒,撲上前去,把老漢的衣服割成條條碎片,又猛打老漢的耳光,往下拔他的鬍子。楊萬鍾見了大怒,拿起塊石頭砸過去,正中尹氏的腦門,一下子跌倒在地死了過去。楊萬鍾說:「只要父兄能活下去,我即使死了,也沒什麼遺憾了!」說完便投井自殺了。等把他救上來,早已死了。尹氏不久又甦醒過來,聽說楊萬鍾死了,才稍微解了恨。埋葬了楊萬鍾後,楊萬鐘的寡妻留戀兒子,不願改嫁。尹氏對她動不動就辱罵,不給飯吃,硬逼她改嫁走了。只留下楊萬鐘的兒子孤單一人,天天遭受尹氏鞭打,等家人吃完後,才給孩子一點冷飯塊吃。不過半年,就把孩子折磨得骨瘦如柴,僅剩下一口氣了。
一天,馬介甫忽然又來了,楊萬石囑咐家人不要告訴尹氏。馬介甫見楊父又和以前一樣衣衫襤褸,大吃一驚;又聽說楊萬鍾死了,跺著腳悲歎不已。喜兒聽說馬介甫來了,便跑過來依偎在他身邊戀戀不捨,連聲叫著「馬叔」。馬介甫一時沒認出他來,端詳了很久,才認出他是喜兒,驚訝地說:「孩子怎麼瘦弱成這個樣子了?」楊父囁囁嚅嚅地對馬介甫講了一遍。馬介甫生氣地對楊萬石說:「我過去說你不像人樣,果然沒說錯。你們兄弟二人就這一根苗,孩子如被害死了怎麼辦?」楊萬石一言不發,只會俯首帖耳地流淚。過一會兒,尹氏便知道馬介甫來了。她不敢自己出來趕客人走,就把楊萬石叫進去,一甩手就是幾巴掌,逼他趕走馬介甫。楊萬石含著淚出來,臉上的掌痕還清清楚楚。馬介甫發怒地說:「你不能制服她,難道就不能休了她嗎?她毆打父親,害死弟弟,你竟安心忍受,怎麼做人?」楊萬石聽了,坐立不安,似乎被打動了。馬介甫又激他說:「如她不願走,理應用武力趕走她,就是殺了她也不要害怕。我有兩三個知己朋友,都身居要職,一定會給你出力,保你無事!」楊萬石答應,負氣奔進內室,正好迎面碰上尹氏。尹氏大聲責問:「你要幹什麼?」楊萬石一下子變了臉色,雙膝一軟,不由自主地跪在地上說:「馬生教我休了你。」尹氏更加狂怒,四處尋找刀杖。楊萬石恐懼萬分,急忙逃了出來。馬介甫鄙夷地說:「你真是不可救藥!」說完,打開一隻箱子,取出一點藥末,摻在水裡讓楊萬石服下,說:「這藥叫『丈夫再造散』。我所以不敢輕易使用它,是因為這種藥能傷害人。現在迫不得已,姑且試試吧!」楊萬石喝下藥後,頃刻便覺一股怒氣從胸中冒出,像烈火燒著一樣,一刻也忍受不了,逕直奔進內室,喊叫聲像打雷一樣。尹氏還沒來得及講話,楊萬石飛起一腳,把她踢出幾尺以外,跌倒在地。接著又攥起塊石頭,往她身上砸了無數下,打得她幾乎體無完膚。尹氏嘴裡還在含混不清地怒罵不止,楊萬石更加暴怒,從腰裡拔出刀子。尹氏見了,叱罵說:「拔出刀子,你敢殺我嗎?」楊萬石一言不發,從她大腿上一刀割下巴掌大的一片肉扔在地上。剛要再割,尹氏已疼得哀叫著求饒。楊萬石不聽,又割下一塊肉扔了。家人們見楊萬石又凶又狂,急忙跑過來,死命將他拉了出去。馬介甫迎上去,挽著他的胳膊慰勞了一番。楊萬石還餘怒不息,屢屢掙扎著要再去找尹氏,馬介甫勸阻住他。又過了一會兒,藥力漸漸消失,楊萬石又變得垂頭喪氣起來。馬介甫囑咐他說:「你不要氣餒!重振男子漢大丈夫之氣,全在此一舉。人之所以怕老婆,並不是一朝一夕就
能形成的,而是有一個過程。就好比昨天的你已經死了。今天又復活了一個新的你,必須從此洗舊革新。再一氣餒,可就無法挽回了!」說完,讓楊萬石進去看看尹氏動靜。尹氏一看見楊萬石,還嚇得全身發抖,從心裡服了,讓奴婢硬扶自己起來,要跪爬過去迎接。楊萬石阻止,尹氏才罷了。楊萬石出來後告訴馬介甫,楊氏父子都非常高興。馬介甫便要告辭,父子都挽留他。馬介甫說:「我正要去東海,所以順路來看看你們。回來時我們還能相見。」
過了一個多月,尹氏才漸漸傷好起床了,她對丈夫十分恭敬。可日子一長,她覺得楊萬石黔驢技窮,似乎沒什麼別的能耐,對他先是親暱,漸漸嘲笑,漸漸喝罵,不長時間,完全恢復了老樣子。楊父忍受不了,深夜逃到河南當了道士,楊萬石也不敢去尋找他。
過了一年多,馬介甫來了,得知事情經過,憤怒地斥責了楊萬石一番。立即叫過喜兒,把他抱到驢背上,撇下楊萬石,趕著毛驢走了。從此後,村裡的人都鄙視楊萬石。學使駕臨考核生員時,認為楊萬石品行惡劣,革去了他的生員資格。又過了四五年,楊萬石家遭受火災,房子財物全部化為灰燼,還延燒了鄰居家的房屋。村裡的人把楊萬石扭送到郡府,打起官司,官府罰了他很多銀兩。於是楊萬石家產漸盡,連住的地方都沒有了。鄰村的人都相互告戒,誰也不要借給他房子住。尹氏的兄弟們憤怒她的所作所為,也拒絕接濟,不讓她回娘家。楊萬石窮困不堪,只得把王氏賣給了大戶人家,自己帶著尹氏向南出走。到河南地界,旅費便沒有了。尹氏不願跟他走,一路嚷叫著要改嫁。正好有個屠夫死了老婆,便花三百弔錢把尹氏買走了。只剩楊萬石一人,在附近的城市鄉村中討飯度日。
一天,楊萬石到一個大戶人家門前討飯,看門的人斥責著趕他走。一會兒,有個官員從門裡出來,楊萬石急忙跪在地上哭泣著乞討。那官員仔細端詳他,又問了問姓名,驚訝地說;「是我伯父!怎麼窮到這個地步!」楊萬石細看,認出是弟弟的兒子喜兒,不禁失聲痛哭,跟著喜兒進了家。只見高房大屋,金碧輝煌。一會兒,楊父扶著一個童兒出來,父子見面,相對悲泣。楊萬石才講述了自己的遭遇。原來,馬介甫帶走喜兒後,一直讓喜兒住在這裡。幾天後,馬介甫又去找了楊父來,讓他們祖孫團聚。又請了先生,教喜兒讀書。喜兒十五歲時考中了縣學,第二年又中了舉人。馬介甫又替他娶了妻子,便要告別。祖孫二人哭著挽留他,馬介甫說:「我不是凡人,是狐仙,道友們已等我很久了!」於是,告辭走了。喜兒說到這裡,不禁感到心酸。又想起自己過去同庶伯母王氏倍受酷虐,越發悲傷。於是,喜兒派人帶著銀兩,用華麗的車子,把王氏贖出接了回來。一年多,王氏生了個孩子,楊萬石便把她扶作正妻。
尹氏跟了屠戶半年,還是像以前那樣凶悍狂悖。一次,屠戶大怒之下,用屠刀把她大腿上穿了個洞,再用根豬毛繩從洞裡穿過去,把她吊在了房樑上,自己挑著肉出門走了。尹氏號叫得聲嘶力竭,鄰居才知道。把她放下來,從傷口裡往外抽繩子,每抽動一下,尹氏喊疼的叫聲震動了四鄰。從此,尹氏見了屠戶就毛骨悚然。後來大腿上的傷雖然好了,但毛繩上的斷毛留在肉裡,走起路來終究還是一瘸一拐的。還得晝夜服侍屠戶,不敢稍有鬆懈。屠戶蠻橫殘暴,每次喝醉酒回來,就毒打尹氏一頓,毫不留情。到此時,尹氏才明白過去自己強加給別人的虐待,也是像自己今天的景況一樣不好受。
一天,喜兒的夫人跟伯母王氏到普陀寺燒香,附近村莊的農婦都來拜見她們。尹氏也混在人群裡,悵惘地不敢靠前。王氏看見了她,故意問:「這是誰呀?」家人稟告說;「她是張屠戶的老婆。」呵斥尹氏上前,給太夫人行禮。王氏笑著說:「這個婦人既是屠戶的老婆,應該不缺肉吃,怎麼如此瘦弱?」尹氏聽了又慚愧又憤恨,回家後便去上吊,但繩子太細,沒能吊死,屠戶也就更加厭惡她。
又過了一年多,張屠戶死了。一次,尹氏在路上遇到楊萬石,遠遠地望見他,便跪在地上爬過去,淚流如雨。楊萬石礙著僕人在場,一句話沒和她說。但回去後卻告訴侄子,想接回尹氏,侄子堅決不同意。尹氏被村裡的人唾棄,久久沒有個歸宿,便跟著乞丐們討飯度日,楊萬石還不時地和她在野外荒廟中幽會。侄子引以為恥,暗暗地讓乞丐們把楊萬石羞辱了一番,他才和尹氏斷絕了關係。這件事我不知究竟,最後幾行是畢公權撰寫成的。