建安三年,曹草在第二次西征张绣的时候,发生了一个“割发代首”的故事,后被传为历史佳话。但这故事的来龙去脉,却必须追寻到第一次西征。却说曹草于公元196年(建安元年)挟皇帝迁都之后,为解决粮食问题,接着便下令在许下(即许都附近)电田。电田当年,光许城就收得一百万斛公粮(当时一斛合十斗)。曹草见粮食问题已经基本解决,便开始讨伐不服从他的一些豪强其中张绣(董卓的旧部将领)离许都最近,威胁也最大。张绣与荆州刘表结成联军,不仅对曹草“挟天子以令诸侯”的行为不满,还扬言要打进许都,劫走汉献帝。
曹草闻报大怒,便把开始征讨的第一个目标指向张绣。公元197年1月,两军会战于洧水(今河南白河,汉水分支)。张绣先是投降,后又因曹草霸占他的婶母怒而反叛,偷袭曹营,曹草大败。曹草总结这次失败的原因时认识到,除了自身之外,其中还有条最主要的原因,就是军纪松弛,不堪一击。由此。他开始整顿军纪,先后颁布了各种军令、战令、对行军、作战、扎营等都作了具体规定,且宣布全军上下,不论什么人,只要违反了纪律,都要受到惩罚。
公元198年(建安三年),曹草开始对张绣进行第二次征伐。时正值割麦季节,为严明军纪,曹草一开始就下令军队将士:“凡践踏麦田者一律斩首!”当他看到在经过一片麦地时,将士们个个都小心谨慎,生怕踏倒一棵麦苗,心中十分高兴。不料正在高兴之时,一只受惊的斑鸠从麦中飞出,扑撞在曹草的战马身上,战马受惊,蹭地窜入麦田,蹭倒了一片麦子。
曹草飞步上前,勒住马缰,下令全军停止前进。然后,他把主管军法条例的官叫来问道:“按照规定应该给我定什么罪呢?”这位官员说:“您是一军之首,还要统帅全军,知道错就行了,不能定罪。”曹草说:“法律是我制定的,我怎么能破坏呢?”他略沉思了一下又说:“我犯了法,本应同等治罪,但念我是主帅,还要统兵征战,又不能处死,怎么办呢?”说着,他便拔出剑来,割下了自己的一把头发,传令全军:“我犯了罪,理应斩首;但还要统兵现在就以割发代首吧!”
曹草割发代首的事传开后,全军上下无不震惊,谁还敢再违犯法令呢!