Published: 2017-08-28 11:51:30 BdST
A day after rescuing Bangladesh from a top-order collapse with the bat, the left-arm spinner claimed 5-68 to help dismiss Australia for 217 and justify his status as the world's top- ranked Test all-rounder.
Shakib’s haul meant he now has a five-wicket haul against each of the nine top-ranked Test teams.
Having claimed a 43 run first-innings lead on a viciously turning track, Bangladesh further consolidated their position and were 45-1 at the close on the second day.
Bangladesh stretched their overall lead to 88 runs and Australia will have the unenviable task of batting in the fourth innings on a fast-deteriorating track at the Shere Bangla National Stadium.
Soumya Sarkar threw his wicket away after scoring 15 but Tamim Iqbal was batting on 30 with nightwatchman Taijul Islam yet to open his account.
Resuming day two on a precarious 18-3, the tourists soon found themselves without their best bet against the rampaging spinners.
Steve Smith, often cited as an example of how to negate spinners on the rank turners of the subcontinent, for once failed to live up to that reputation.
Off-spinner Mehidy Hasan, who took 12 wickets at the same venue to script Bangladesh's first Test win over England last year, struck in his second over, sneaking one through the gate to dismiss the rival captain for eight.
Matt Renshaw and Peter Handscomb were also subjected to a trial by spin with Mehidy (3-52) and left-arm spinner Shakib Al Hasan (3-54) hunting in tandem on a surface that perfectly suited their craft.
Shakib was convinced he had trapped Handscomb on nine and asked skipper Mushfiqur Rahim to review the not out decision but could not get it overturned.
Renshaw was on 14 when he was adjudged lbw to Mehidy but the southpaw reviewed the decision to prolong his stay after replays suggested the ball would have missed the stumps.
With the partnership blooming, however, Taijul Islam finally trapped Handscomb lbw for 33 with a ball that kept slightly low.
Opener Renshaw soon joined him in the pavilion for 45, edging Shakib to slip where Soumya Sarkar took a sharp catch at the second attempt.
Matthew Wade fell for five, even though replays suggested the Mehidy delivery which trapped him lbw would have missed the stumps.
Shakib got Glenn Maxwell stumped for 23 but Cummins, who survived a dropped catch and got a caught-behind decision against him overturned, and Agar showed grit to frustrate the hosts for a while.
Bangladesh [260 and 45/1 (Tamim 30*, Taijul 0*)] lead Australia [217 (Renshaw 45; Shakib 5/68, Mehedi 3/62)] by 88 runs.