Skipper Mahmudullah struck unbeaten 101 off 122 balls while Mohammad Mithun scored 67 off 110 balls as Bangladesh declared their second innings at 224-6 to give Zimbabwe a 443-run target in the second Test in Dhaka on Wednesday.
The hosts began their victory push by reducing Zimbabwe to 76-2 before bad light forced an early stumps on the fourth day .
Off-spinner Mehedi Hasan broke a 68-run opening stand by removing Hamilton Masakadza for 25 after he dropped the Zimbabwe captain on five off debutant pacer Khaled Ahmed.
Mehedi also dropped Brian Chari on naught but fellow spinner Taijul Islam dismissed the opener for 43 soon after Bangladesh got their first breakthrough.
Brendon Taylor and Sean Williams remained at the crease on four and two respectively, as Zimbabwe still trailed the hosts by 367 runs.
Mahmudullah drove Bredon Mavuta towards cover for two runs in the last ball before tea to complete his second hundred in Test cricket and first in more than eight years since his maiden century in 2010 against New Zealand.
Bangladesh immediately declared their second innings with Mehedi Hasan remained unbeaten on 27.
Mahmudullah and Mehedi put up an unbeaten 73-run stand for the seventh wicket to guide Bangladesh extend their lead over 400-run after Bangladesh lost Mithun and Ariful Haque (five) in the post-lunch session.
Before getting out to Sikandar Raza, debutant Mithun completed his maiden Test fifty and added 118 runs with Mahmudullah for the fifth wicket after Bangladesh were reduced to 25-4 in the early morning of the fourth day.
The Tigers reached 78-4 at lunch break after Zimbabwe pacer duo Kyle Jarvis and Donald Tiripano rattled Bangladesh top-order as both the pacers bagged two wickets each.
Bangladesh didn’t ask Zimbabwe to follow-on despite a healthy 218-run lead in the first innings.
They lost both their openers Imrul Kayes (three) and Liton Das (six) in the fifth over of the fourth day.
Imrul was caught at deep point off Jarvis while the Zimbabwe pacer bowled out Liton one ball later.
Mominul Haque who made 161 runs in the first innings, could make only one run in the second innings and was dismissed by Tiripano one over later.
Mushfiqur Rahim also failed in the second innings as he was dismissed for seven leaving Bangladesh in dire strait.
Bangladesh need a win in this Test to square the series after going down by 151 runs in the opening Test in Sylhet.
Want stories like this in your inbox?
Sign up to exclusive daily email
More Stories from Cricket