Fourth one-day international, Dhaka:
Bangladesh 247-9 beat Zimbabwe 189 by 58 runs
Five-match series level 2-2
Mashud's sixth one-day fifty was a special knock
Mohammad Rafique and Manjural Islam Rana took four wickets each as Bangladesh levelled the one-day series against Zimbabwe with one game to play.
Chasing Bangladesh's 247-9 in Dhaka, Zimbabwe were sunk by 58 runs despite an opening stand of 102 between Barney Rogers and Stuart Matsikenyeri.
Rafique returned career-best figures of 4-33, while his left-arm spin colleague Manjural weighed in with 4-36.
Nafis Iqbal and Khaled Mashud hit fifties after the hosts won the toss.
Opener Iqbal struck 56, including six boundaries and a six, and featured in a partnership of 71 for the second wicket with Aftab Ahmed (44).
Mashud moved to 51 with a six before falling in the 48th over, one of three Brendan Taylor (3-54) strikes in four balls.
The keeper enjoyed a stand of 64 for the fifth wicket with Mohammad Ashraful (36) after spinner Prosper Utseya had kept a tight hold on the scoring in the middle overs, conceding just 33 runs in his 10 overs and dismissing Iqbal.
And last-wicket pair Manjural Islam and Nazmul Hossain took 14 runs off the final over, bowled by Taylor.
Matsikenyeri and Rogers made a fine start to the run-chase, scoring at nearly five runs per over in the early part against new-ball pair Mashrafa Mortaza and Nazmul Hossain.
But the introduction of the turning ball spelt trouble for the visitors, with Manjural striking twice in one over to remove Matsikenyeri for 50 (off 69 balls) and Dion Ebrahim for a duck.
Rogers soon followed lbw to Rafique for 49, one of three wickets to fall for three runs which saw Zimbabwe slump to 117-5.
Hamilton Masakadza tried hard in the middle-order with 33 off 53 balls, but Rafique saw off three of his partners in quick succession to quell the fightback.
The return of Mortaza saw Masakadza's resistance ended in the 43rd over, leaving last man Doug Hondo to stroke an entertaining 17 before falling to a run-out in the 48th over.
The fifth and last match of the series takes place at the same ground on Monday.
Bangladesh: Habibul Bashar (capt), Nafis Iqbal, Aftab Ahmed, Rajin Saleh, Mohammad Ashraful, Khaled Mashud, Khaled Mahmud, Mashrafe Mortaza, Mohammad Rafique, Nazmul Hossain, Manjural Islam Rana.
Zimbabwe: Tatenda Taibu (capt/wkt), Stuart Matsikenyeri, Douglas Hondo, Brendan Taylor, Christopher Mpofu, Elton Chigumbura, Hamilton Masakadza, Tinashe Panyangara, Dion Ebrahim, Barney Rogers, Prosper Utseya.