Dhaka - Bangladesh are on the verge of sweeping Zimbabwe in their one-day international series after winning the fourth match by 21 runs on Friday.
The bowlers put up a disciplined performance for the hosts to lead the series 4-0, restricting Zimbabwe to 235/8 after the batsmen helped them to amass 256/8.
It was Bangladesh's 50th ODI victory on home soil.
Left-arm spinner Shakib Al Hasan removed both Zimbabwe openers in the space of three balls, and legspinner Jubair Hossain took 2-42 on debut.
Brendan Taylor top-scored for Zimbabwe with 63, while Solomon Mire made a 54-ball 52. They threatened to give Zimbabwe its first win of the series with 106 for the fourth wicket, until Mire was dismissed by Jubair Hossain.
A Rubel Hossain bouncer got Taylor, which struck seven fours in 69 balls.
Zimbabwe was left to make 30 in the final over, and made only eight.
Earlier, Mahmudullah struck a career-best 82 not out to steer Bangladesh to a challenging total. Mushfiqur Rahim scored 77, and added 134 with Mahmudullah for the fifth wicket, after Bangladesh was at a miserable 32-4.
Captain Mashrafe Bin Mortaza hit a quick 39 off 25 balls at the end.
Fast bowlers Solomon Mire, 3-49, and Neville Madziva, 3-60, enjoyed career-best figures for Zimbabwe.
Madziva and Mire scythed down the Bangladesh top order to leave the hosts tottering, but Mahmudllah and Rahim ended the rot. Rahim brought up his 18th half-century off 51 balls.
He and Mahmudullah combined for 134 in 25 overs. Rahim, after seven boundaries, was out for 77 off 78 balls when he attempted a slog sweep of legspinner Tafadzwa Kamungozi, 2-36.
Mahmudullah remained unbeaten after his 10th half-century, studded with six fours.
A one-minute silence was observed for the death of Australia batsman Phillip Hughes.