Thisara Perera's brilliant counter-attack inspired Sri Lanka to a 13-run victory over Bangladesh in the first one-day international in Dhaka on Monday, giving the tourists the lead in the three-match series.
Perera smashed an unbeaten 80 off 57 balls to lift the tourists from a hopeless 67-8 in the 22nd over to 180 all out after Bangladesh won the toss and elected to field.
Sensing an opening, Sri Lanka hit back to bowl out the hosts for 167 in the 40th over of the rain-curtailed match at the Sher-e-Bangla stadium.
Bangladesh, riding on opener Shamsur Rahman's 62 off 49 balls and 44 from Mominul Haque, were cruising at 114-2 in the 20th over when the batting came apart.
Sri Lankan captain Angelo Mathews claimed three wickets and off-spinner Sachithra Senanayake took two as Bangladesh lost their last eight wickets for 53 runs.
Perera proved to be Sri Lanka's hero after the tourists were left in tatters in a match reduced to 43-overs-a side from the stipulated 50 due to bad weather.
Perera and Senanayake ensured Sri Lanka did not fall below 147, their lowest one-day total against Bangladesh, by adding 82 runs for the ninth wicket.
Perera, who helped Sri Lanka record last-ball wins over Bangladesh in two Twenty20 matches last week, hit six sixes and four boundaries in a superb rearguard action.
Senanayake made 30 as Sri Lanka put on 113 valuable runs for the last two wickets after the spectacular collapse by the top order.
Bangladesh lost Anamul Haque off the second ball of the innings, caught in the slips off Lasith Malinga, but Shamsur and Mominul put on 79 for the second wicket.
Perera, who was named man of the match, broke the threatening stand by having Mominul caught at point for a fluent 44 that contained seven boundaries.
Bangladesh moved to 114-2 in the 20th over when their two main batsmen, Shamsur and Shakib Al Hasan, were run out in the space of five runs.
Shamsur was given out by the third umpire after television replays showed the batsman's feel in the air after his bat got stuck just outside the crease as he went to complete a second run.
Senanayake swung the match Sri Lanka's way by removing Nasir Hossain and Mohammad Mahmudullah in three deliveries to make it 133-6 in the 29th over.
Mathews grabbed three of the last four wickets to seal the victory which came when Robel Hossain became the third Bangladesh batsman to be run out.
The second and third matches will be played at the same venue on Thursday and Saturday.
Sri Lanka had won both the preceding Test and Twenty20 series.
Thisara Perera guided Sri Lanka their first ODI win against Bangladesh by 13 runs at the at Shere Bangla National Stadium, Mirpur on Monday.
Bangladesh got off to a great start winning the toss putting Sri Lanka to bat.
Kusal Perera 20 was dismissed LBW by Rubel Hossain with Dilshan making a shock exit at 3 flicking the ball to Mushfiqur Rahim off Rubel's ball.
The Lankans were in all sort of trouble after that with Sangakkara being sent back by Al-Amin Hossain.
Chandimal 13 put up a stiff resistance but was runout by Arafat off Shakib's bowling.
Ashan Priyanjan 6, Agnelo Mathews 3 and Kithuruwan Vithanage 7 collapsed under the Bangladeshi attack.
Nuwan Kulasekara was out for a duck but Thisara Perera steadied the inning with a blistering 80 n.o.
Sachithra Senanayake supported him contributing 30 runs but was sent back off by Shakib. Sri Lanka from 67-8 were revived by a spectacular unbeaten 80 from Thisara Perera to pile 180 runs on the board.
In run chase Bangladesh lost quick wickets with Shamsur Rahman 62, Mominul Haque 44 and Mushfiqur Rahim 27 put up a brave fight but failed to save the match.
Rubel clips the ball to midwicket and set offs for a quick single but hesitates while Al-Amin crosses by, Rubel makes dash back but Mathews takes the bails off.
Rubel Hossain run out 4 (16b 0x4 0x6)
Mathews gets the big wicket eliminating Mushfiqur pitching off length with Mushfiqur attempting to scoop the ball behind into to the safe hands of the keeper.
Mushfiqur Rahim c Sangakkara b Mathews 27 (110m 50b 0x4 1x6)
Mathews strikes out Arafat with Sangakkara latching on to the ball.
Arafat Sunny c Sangakkara b Mathews 5 (13b 1x4 0x6)
Sohag Gazi c Vithanage b Mathews 6 (9b 1x4 0x6)
Senanayake dismisses Mahmudullah for a duck while attempting to play the ball well taken by Priyanjan.
Mahmudullah c Priyanjan b Senanayake 0 (2b 0x4 0x6)
Senanayake strikes with a flighted offspinner outside off, Nasir stepped forward to drive and edges the ball to Mathews .
Nasir Hossain c Mathews b Senanayake 8 (29b 1x4 0x6)
Perera bowls a tidy spell but fails to contain Nasir.He concedes 4 runs off the 26th over.
Senanayake tames the new batsmen Mushfiqur Rahim and Nasir Hossain conceding just 1 run off the 25th over.
Perera plugs the run rate. Concedes just 1 run after the end of the 24th over.
Shafiq pushes the ball to point and looked for the single but Sangakkara takes the bails off as Shakib hastly runs but fails to make it.
Shakib Al Hasan run out 3 (9b 0x4 0x6)
Perera maintains pressure on the Bangladeshi batsmen conceding just 2 runs off the 22nd over.
Senanayake bowls smart to concede just one run off the 21st over.
Kulasekara bowls to Shamsur who attempts to take a sneaky run. But Sangakkara has appealed for a run out because Shamsur's bat gets stuck just before making it to the crease. The third umpire gives him out.
Shamsur Rahman run out 62 (49b 5x4 3x6)
Kulasekara is punished by Shamsur hitting him twice to the boundary but is dismissed by a alert Sangakkara.10 runs off the 20th over.
Senanayake manages to plug the runs conceding just 2 runs at the end of the 19th over.
Kulasekara puts the brake on the run rate conceding 3 runs off the 18th over.
Shamsur gets his fifty slamming Perera for two huge sixes. 13 runs come off the 17th over.
Shamsur steps on the attack slamming Malinga twice to the ropes. 16 runs coming off the 16th over.
Perera bowls a brilliant maiden over and claimed a wicket at the end of the 15th over.
Perera gets the vital break for Lanka to dismiss Mominul who cuts him to Dilshan.
Mominul Haque c Dilshan b NLTC Perera 44 (53b 7x4 0x6)
Malinga proves expensive conceding 12 runs after 14 overs with Shamsur smashing one six and a four.
Mominul steadily builds on the attack punishing Perera smashing the lose ball to the boundary. The run flow keeps coming. 7 runs off the 13th over.
Mominul smashes two boundaries off Senanayake's bowling to boost Bangladesh's run rate. Shamsur supports him well .Senanayake concedes 9 runs after 12 overs.
Mominul bats sensibly to get 50 for Bangladesh. Perera concedes 3 runs at the end of 11 overs.
Senanayake and Senanayake torment Senanayake rotating strike. Missfields add up to the total with 7 runs off the 10th over.
Perera concedes 3 runs after 9 overs giving no room to the Bangladesh batsmen.
Senanayake is punished by Senanayake hitting him hard to the ropes. Partnership of 38 runs builds up steadily as 6 runs comes off the 8th over.
Mominul finds the gap to smash Malinga to the ropes. Malinga concedes 7 runs off the 7th over.
Mominul Haque finds the gap to slam Mathews to the boundary.Mathews concedes 7 runs after 6 overs.
Malinga concedes just 3 runs after 5 overs with Mominul Haque looking to strike form.
Mominul Haque opens up the attack slamming Kulasekara to the ropes. 7 runs come off the 4th over.
Malinga concedes just 3 runs after 3 overs with Shamsur Rahman and Mominul Haque attempting to strike form.
Kulasekara attempts to keep Mominul Haque in check.Kulasekara concedes 3 runs off the 2 over.
Malinga dismisses Anamul Haque for a duck concedes 1 run in the first over.
Malinga strikes out Anamul Haque who edges the ball to first slip with Mathews getting his hands under the ball.
Anamul Haque c Mathews b Malinga 0 (2b 0x4 0x6)
SRI LANKA INNINGS
Sohag Gazi dismisses Malinga pitching outside off as Malinga edges the ball to Anamul behind the stumps.
Lasith Malinga c Anamul Haque b Sohag Gazi 0 (10b 0x4 0x6)
Al-Amin Hossain looks in disbelieve as Perera is dropped yet again by Shakib. Perera in top form slamming a six.11 runs comes off the 39 over.
Shakib Al Hasan fails to tame Perera who smashes him for a huge six and four. Shakib concedes 12 runs at the end of 38 overs.
Perera punishes Al-Amin Hossain slamming him to the ropes.Malinga gives more strike to the settled Perera. 7 runs comes of the 37 over.
Shakib Al Hasan concedes just one run and a wicket in the 36 over to tighten their grip at this stage of the match.
Shakib finally gets his act together to clean bowl Senanayake breaking the strong partnership.
Sachithra Senanayake b Shakib Al Hasan 30 (48b 2x4 1x6)
Shakib Al Hasan concedes 3 runs as Senanayake and Perera rotate strike to build on a solid partnership of 80 runs after 34 overs.
A strong partnership of 73 runs is building on as Rubel Hossain manages to concede just 4 runs after 33 overs.
Sohag Gazi manages to contain the duo sri Lankan batsman Senanayake and Perera conceding just 2 runs after 32 overs.
Rubel Hossain once again dissapointed as Senanayake is dropped. Concedes just 3 runs after 31 overs.
Perera does the hard damage slamming Mahmudullah for a boundary. 5 runs comes off the 30 overs.
A 59 runs partnership builds as Perera is dropped once again as he slams Gazi for a six. While Senanayake gets a boundary. 11 runs comes off the 29 over.
Sohag Gazi looks dissapointed as Senanayake is dropped by Mahmudullah on the slips.Gazi concedes 3 runs after 26 overs.
Mahmudullah concedes just 4 runs with Senanayake taking the strike after 25 overs.
Sohag Gazi concedes just 2 runs after 24 overs with Perera looking dangerous.
Arafat Sunny fails to contain Perera who slams 3 sixes and a boundary to turn the tide after 23 overs.
Arafat Sunny dismisses Kulasekara pitching outside off hitting top of off stump.
Nuwan Kulasekara b Arafat Sunny 0 (9b 0x4 0x6
Arafat Terrific over by Arafat Sunny bowling a maiden over and claiming a vital wicket of Mathews after 17 overs.
Arafat Sunny completely beats Sri Lankan captain A Mathews ripping off his off stump.
Angelo Mathews b Arafat Sunny 3 (15b 0x4 0x6)
Arafat Sunny bowls to Chandimal but there is a mix up as Chandimal is run out by Shakib.
Dinesh Chandimal run out 13 (28b 0x4 0x6)
Shakib Al Hasan piles pressure on the Lankan batsmen conceding just one run after 14 overs.
Debutant Arafat Sunny concedes 3 runs with new batsman Mathews and Chandimal attaempting to push the run rate after 13 overs.
Shakib Al Hasan strikes to take down Priyanjan who misreads the ball completely to be given out LBW after 12 overs.
Ashan Priyanjan lbw b Shakib Al Hasan 6 (8b 1x4 0x6)
Al-Amin Hossain concede 2 runs after 11 overs with new batsman Priyanjan and Chandimal on the crease.
Al-Amin Hossain claims a a huge wicket pitching the ball on the stumps, as Sangakkara lofts it over the mid-off fielder and Arafat Sunny takes a catch.
KC Sangakkara c Arafat Sunny b Al-Amin Hossain 8 (14b 1x4 0x6)
Rubel Hossain concedes 4 runs with Sangakkara and Chandimal at the crease after 10 overs.
Al-Amin Hossain puts the brake on the Sri Lankan batsmen conceding no runs after 9 overs.
Sangakkara slams Rubel for a boundary. Rubel concedes 8 runs after 8 overs.
Hossain concedes just one run and puts the pressure on Chandimal and Sangakkara after 7 overs.
Rubel concedes 3 runs and claims the wicket of Perera after 6 overs.
MDKJ Perera lbw b Rubel Hossain 20 (18b 2x4 1x6)
Rubel Hossain bowls to Perera not giving Perera any room trapping him in front of leg stump.
Dilshan out! Rubel Hossain bowls to Dilshan. It was a short delivery and Dilshan pulls to Mushfiqur Rahim who takes a easy catch.
TM Dilshan c Mushfiqur Rahim b Rubel Hossain 3 (11b 0x4 0x6)
Hossain concedes 1 run slowing putting the Lankan batsman under pressure after 3 overs.
Rubel Hossain attempts to slow the run flow concedes 2 runs after 2 overs.
Kusal Perera attacks on the onstart slamming Al-Amin Hossain for two boundaries.
SRI LANKA INNINGS
Bangladesh XI: Mushfiqur Rahim, Tamim Iqbal, Al-Amin Hossain, Anamul Haque, Arafat Sunny, Mahmudullah, Mashrafe Mortaza, Mominul Haque, Naeem Islam, Nasir Hossain, Rubel Hossain, Shafiul Islam, Shamsur Rahman, Shakib Al Hasan, Sohag Gazi
Sri Lanka XI: AD Mathews, LD Chandimal, TM Dilshan, KMDN Kulasekara, RAS Lakmal, SL Malinga, BAW Mendis, AK Perera, MDKJ Perera, NLTC Perera, S Prasanna, SMA Priyanjan, KC Sangakkara, SMSM Senanayake, KDK Vithanage
Sri Lanka and Bangladesh begin a three-match one-day international series at Shere Bangla National Stadium, Mirpur on Monday.
The match was scheduled to begin at 1pm local time but the toss has been delayed due to a wet outfield.
Sri Lanka won the two-match Twenty20 series 2-0 sealing victory in the last ball.