Teenage pacemaker Naseem Shah retired Bangladesh-starter Saif Hassan to give Pakistan a breakthrough after the home team had a great 212-point lead in Sunday’s first test.
Bangladesh struggled to save the test and had 51-1 on the third day, with the first game Tamim Iqbal with 32 and Najmul Hossain Shanto with three.
Spinner Yasir Shah grabbed the other gate of Iqbal after tea.
Bangladesh, which scored 233 in its first innings, still needs 161 to prevent a card loss with nine intact wickets.
Pakistan was eliminated by 445 in their first innings with Babar Azam scoring 143 and Haris Sohail 75.
Saif, who played his first test, was in a few after his second baling duck in the first innings, but confidently started to reach 16 with four limits before Naseem hit him.
Iqbal, a newcomer who scores the highest first-class score on 334 Bengal soil that did not play last week, has so far reached six limits.
Previously, Pakistan lost seven portholes on either side of lunch, while Sohail held the tickets.
Sohail, whose position was at risk after constant failures, beat seven four and two six in his third half-century test before bringing Taijul Islam spinner to the center of the field.
The last man, Naseem, was exhausted to finish the first innings of Pakistan.
A healthy crowd of 10,000 people on vacation had expected the popular batter Babar Azam to score a double of a hundred.
But resumed in 342-3, Pakistan lost Azam in the first ball of the day.
Azam seemed to be stuck in two thoughts as to whether he should play or leave a long delivery of rhythmic bowler Abu Jayed and approached Mohammad Mithun for the first slip.
Azam’s 143 was his fifth Test 100 and an attractive batting master class that lasted 4 hours and 37 minutes and included six and 18 four.
Asad Shafiq, who received 137 for the fourth wicket with Azam, added only five to his nightly score before being caught behind the fast bowler Ebadot Hossain for a 65 that included nine limits.
Jayed was the player’s choice with 3-86, while Islam ended with 2-139.
Wicketkeeper Mohammad Rizwan fell quickly with 10 and got a hook from Rubel Hossain who took Mahmudullah safely on the thin leg.
Rubel also fired Yasir Shah for five and Shaheen Shah Afridi for three, both before ending 3-113.