Kriralok Desk: Shakib took 2-17, as he moved to 108 wickets and overtook Sri Lanka’s Lasith Malinga, during Scotland’s 140-9.
Chris Greaves made 45, and then took 2-19 as Bangladesh finished 134-7, six runs adrift.
Earlier, Oman thrashed Papua New Guinea by 10 wickets in the opening game.
After being put in to bat Scotland made a slow start and lost captain Kyle Coetzer for a duck, but recovered to 45-1, before losing five wickets for just eight runs in 25 balls, to slip to 53-6.
Greaves then shared 51 with Mark Watt, who made 22, and 27 with Josh Davey to work Scotland up to a defendable total.
Scotland removed both openers to leave Bangladesh 18-2, before a 47-run partnership between Shakib (20) and Mushfiqur Rahim (38) gave the Tigers a platform.
But both fell in the space of two overs, meaning the run-rate started to rise sharply, and despite conceding 17 from the final over some earlier good bowling and catching was enough for Scotland to pick up the win.
Hampshire’s Brad Wheal was the pick of the bowlers, taking 3-24.
In the tournament’s first game Papua New Guinea – who had lost their previous 10 games in white-ball cricket and were making their World Cup debut, resulting in tears during the national anthems – were 0-2 before recovering to 102-3, but another collapse restricted them to 129-9, with captain Assad Vala top scoring with 56.
Oman captain and spinner Zeeshan Maqsood claimed 4-20, the best figures by an Oman bowler in T20 cricket, before his openers Jatinder Singh and Aqib Ilyas – who had never batted together for Oman – hit 12 fours and five sixes as Oman won with 38 balls to spare and became just the third men’s team to win a T20 World Cup game by 10 wickets.
The next Group B games are on Tuesday, with Scotland facing Papua New Guinea and Bangladesh taking on Oman.