Bangladesh stays seventh with just two points from one win in four games.
Earlier, opting to bat, Bangladesh got off to a great start on a batting friendly surface. Tanzid Hasan, who was on the verge of being left out from this game, scored a maiden ODI half-century instead.
Together with Litton Das, he put on 93 runs off 88 balls for the first wicket.
For India, there was another cause for concern as well. All-rounder Hardik Pandya hobbled off in the ninth over with a twisted left ankle. He was trying to field off his bowling as Das struck a boundary.
Pandya was taken for scans at a local medical facility. Surprisingly, Kohli completed that ninth over, albeit bowling just those three deliveries.
Bowling all-rounder Shardul Thakur (1-59) stepped up, but he didn’t provide the same control that Pandya often does. Hasan scored 50 off 41 balls, hitting five fours and three sixes.
Instead, wrist spinner Kuldeep Yadav provided the breakthrough, trapping Hasan lbw in the 15th over. India etched out three more wickets for just 44 runs and reduced Bangladesh to 137-4 in 27.4 overs.
While Yadav provided control from one end, left-arm spinner Ravindra Jadeja inflicted more damage. First he trapped stand-in skipper Najmul Hossain Shanto lbw for eight runs. Then, he dismissed Das, who scored 66 off 82 balls with seven fours.
In between, Mehidy Hasan Miraz was surprisingly promoted but wicketkeeper Rahul took a diving catch to his left and sent him back for three runs.
Veteran Mushfiqur Rahim stabilized the innings with 38 off 46 balls. He put on 42 runs with Towhid Hridoy for the fifth wicket. Hridoy was caught off Thakur for 16 runs.
Rahim then put on 22 runs with Mahmudullah, before a stunning one-handed catch at point from Jadeja off Bumrah sent him back.
Mahmudullah guided the lower-order and top-scored with 46 off 36 balls. He hit three fours and three sixes. His most vital partnership was worth 32 off 26 balls with Nasum Ahmed (14).
He helped Bangladesh cross the 250-mark, even if it fell short of a par score on a great batting wicket.
In reply, the Indian openers sped off the block. Rohit Sharma and Shubman Gill added 88 off 76 balls.
The skipper led the charge initially, and he scored 48 off 40 balls, with seven fours and two sixes. The second of those sixes was a towering pull shot off Hasan Mahmud over the square leg fence in the 13th over, but he was caught next ball trying to replicate it.
Gill scored his maiden World Cup half-century off 52 balls, hitting five fours and two sixes. He scored 53 runs in all and added 44 off 42 balls for the second wicket with Kohli.
He holed out at the deep midwicket fence against the run of play. Kohli though took over charge of the innings there onward and Bangladesh never got a sniff. He added 46 runs off 59 balls for the third wicket with Shreyas Iyer (19).
Iyer holed out to the deep. Kohli reached 50 off 48 balls, and then marched toward a landmark hundred.
Kohli and Rahul added an unbeaten 83 runs off 74 balls for the fourth wicket.
With a couple of extras thrown in, it seemed like Kohli could miss his chance. But he bided his time and slammed a full toss from Nasum Ahmed into the crowd, kicking off celebrations in Pune.
___