Tamim Iqbal smashed 84 as Bangladesh hit 320 and then inflicted further misery on Sri Lanka to claim its biggest win in one-day cricket on Friday.
Shakib, dealing deftly with short deliveries and never holding back from scoring opportunities, also reached his fifty and added 57 runs with Mushfiqur for the third wicket before giving a return catch to Asela Gunaratne and departing for a 63-ball 67 which featured seven fours.
Bangladesh's previous largest victory margin, in terms of runs, was against West Indies in 2012, when they won by 160 runs in Khulna.
A 57 run stand between Shakib (67) and Mushfiqur Rahim (62) ensured that Bangladesh remained in the ascendency though and Mahmudullah Riyaz (24) and Sabbir Rahman (24) would chip in to help Bangladesh to an imposing 320/7 in their 50 overs.
Thousands women protest across United States against Trump
The scheduled speakers include Ashley Bennett, a Democrat who was elected Atlantic County, New Jersey, freeholder last November. In Rome, the 42-year-old Argento addressed the criticism she received after she had spoken up about the abuse she suffered.
But nothing could stop Tamim, Shakib and Rahim setting up their side's triumph.
Left-arm spinner Shakib took three wickets for 47 while skipper Mashrafe bin Mortaza and paceman Rubel Hossain got two wickets each.
In reply Sri Lanka were abject with no sinlge batsman able to manage more than 30.
Sri Lanka will be led by Dinesh Chandimal in the absence of Angelo Mathews who is suffering from a hamstring niggle and will miss the next match against Zimbabwe too.