India seamer Umesh Yadav and off-spinner Ravichandran Ashwin claimed four wickets apiece as the tourists bowled out Bangladesh for 227 on the opening day of the second and final test in Mirpur on Thursday.
India, pressing for a 2-0 series sweep, finished the day on 19 for no loss with stand-in skipper KL Rahul (three) and Shubman Gill (14) seeing off the final eight overs.
Rahul had been given lbw to Shakib Al Hasan but the batsman reviewed the decision which was overturned after replays confirmed the ball would have missed the stumps.
Bangladesh's modest total was built around former captain Mominul Haque's gritty 84 in his first match of the series.
On a day when several batsmen squandered starts, Mominul was the glorious exception who dug his heels in and kept the scoreboard ticking.
Bangladesh lost both of their openers in the morning session after Shakib won the toss and elected to bat at the Sher-e-Bangla National Stadium.
India sprang a surprise by dropping spinner Kuldeep Yadav, whose match-haul of eight wickets in their comprehensive victory in Chittagong earned him the player-of-the-match award.
Jaydev Unadkat was picked instead and the left-arm seamer, playing in his second test 12 years after his first, drew first blood by removing Zakir Hasan for 15.
Zakir, who smashed a century in his test debut in Chittagong, could have been dismissed for a golden duck but Mohammed Siraj dropped him in the deep in the second over of the day.
Najmul Hossain (24) was trapped lbw by Ashwin (4-71) after offering no shot to a ball which rapped him below the knee roll.
Shakib (16) survived a stumping opportunity before lunch but could not capitalise on it and fell to the first ball after the break.
Mushfiqur Rahim (26) fell to Unadkat and Litton Das made a run-a-ball 25 before chipping an Ashwin delivery to Rahul at midwicket.
Umesh (4-25) dented the Bangladesh lower order and Ashwin removed Mominul and Khaled Ahmed in the space of three balls as Bangladesh wilted in 74 overs.
Mominul, who relinquished the captaincy in May after overseeing a string of defeats, hit 12 fours and a six before his bizarre dismissal.
The number three batsman lunged forward but then decided to leave the ball from Ashwin which brushed his glove en route to Rishabh Pant behind the wicket.