兴平二年(195)春,曹操率军袭击定陶(今山东菏泽市定陶区)。
济阴太守吴资死守南城,未能攻下。
这时正好吕布兵到,曹操顺势击破吕布军。
夏,曹操向驻军巨野(今山东菏泽市巨野县)的吕布部将薛兰、李封,发动进攻。
吕布前来援救,被曹操击败,退走。
曹操乘势斩杀薛兰等人,驻军乘氏(今山东菏泽市巨野县龙固镇),准备先夺取徐州,回来再攻打吕布。
荀彧劝阻说:“从前高祖固守关中,光武帝占据河内,都是巩固基地以控制天下,这样进可以胜敌,退可以坚守,虽然也出现过暂时的困顿失利,但最终完成了统一天下的大业。将军本来从兖州起兵,平定了山东之乱,百姓对你无不心悦诚服。兖州处于黄河与济水之间,是天下的冲要之地,如今虽已残破,但要自保,还是轻而易举的,这正是将军的‘关中’、‘河内’,必须先把这个基地稳固安定下来。击破李封、薛兰后,如果分兵向东进攻陈宫,他必然不敢再有西进的打算,我们便乘机收获已成熟的麦子,节约饭食,储备粮草,就可以一举击败吕布。击败吕布后,再南与扬州刺史刘繇结盟,共同讨伐袁术,控制淮水、泗水一带。如果现在不管吕布,向东攻打徐州,多留兵则出征兵力不足,少留兵则必须动员全城百姓守城,不要说收麦,连上山砍柴也不行。如果吕布乘虚进攻,民心就会更加动摇,只有鄄城、范县、濮阳可以保全,其余的城都会失去,那兖州就基本上不是你的了。如果出征不能平定徐州,将军你能回哪里去呢?而且,陶谦虽死,徐州并不容易灭亡。那里的人吸取往年失败的教训,必然因恐惧而团结一致,内外呼应。如今东边徐州的麦子已经收割,他们必定坚壁清野。到时将军既攻不下城,又抢掠不到物资,不出十天,十万大军还没有作战,已先自陷困境了。上次讨伐徐州,你曾实行威罚,徐州的子弟们想到父兄的仇恨,必然人人固守,不肯归降,即使你能攻破城池,仍不能使他们归顺。考虑事情时,必须有所选择,可以取大而舍小,可以求安全而舍危险,可以在不威胁稳固根本的前提下采取权宜之计。现在东征徐州,并不符合以上三个取舍标准,请将军仔细斟酌。”
曹操这才打消了东征的念头。
吕布再次从东缗(今山东金乡县金乡镇)出发,与陈宫率领万余人来进攻曹操。
曹操部下的士兵全都出营收割麦子去了,留在营中的不到一千人,难以守住营寨。
营寨西边有一条大堤,南边有一片茂密深广的树林。
吕布怀疑曹操有伏兵,说:“曹操多诡诈,我们不要进入伏击圈。”
于是,引军屯南十馀里。
第二天,吕布率军前来挑战。
曹操把一半士兵埋伏在堤后,另一半士兵暴露在堤外布下阵势。
吕布的军队逼近时,曹操命轻装部队接战。
等到两军厮杀在一起以后,曹操伏兵才登上大堤杀出,步兵与骑兵一齐冲锋,大破吕布的军队,缴获了装载战鼓的车子,直追到吕布的营寨才返回。
吕布当夜撤退。
曹操又攻下定陶,分兵平定各县,将兖州各城悉数收复。
吕布退无可退,只好向东到徐州投奔刘备。
吕布初见刘备,十分尊敬,向刘备诉苦说:“我与你都是北部边疆出身的人。我见到函谷关以东诸州、郡起兵,目的是讨伐董卓,但我杀死董卓,来到关东,关东诸将却没有一个接纳我,都要杀死我。”
他请刘备到自己帐中,坐到妻子的床上,让自己的妻子向刘备行礼。
又设宴款待刘备,称刘备为弟。
刘备见吕布语无伦次,表面上与他敷衍应酬,内心却感到不快。
张邈跟随吕布逃走,让弟弟张超带领家属,退守雍丘(今河南杞县)。
曹操兵围雍丘,日夜攻打。
张超派人四处求援,但没人愿意救援雍丘。
张超说:“看来只有臧洪会来救我。”
部下众人都说:“袁绍与曹操目前关系亲密,臧洪是袁绍推荐委任的官员,他不可能破坏袁曹关系,前来救援,自招大祸。”
张超说:“臧洪是天下知名的义士,绝不会背弃旧恩,怕只怕他被袁绍控制,不能及时赶来。”
臧洪此时担任东郡太守,听说张超被围,急得鞋都顾不上穿,赤着双脚跑去找袁绍,大声痛哭,请求发兵解救张超急难。
袁绍不肯发兵。
臧洪又请求率领自己东郡的人马去救援,袁绍还是不许。
结果,张超被曹操围攻几个月,到了十二月城破,张超自杀,被灭三族。
张邈听说家人遇难,逃奔寿春,向袁术求援,途中被部下杀害。