South Africa posted 140-6 on Monday in an action-packed first day of the opening Test, after Bangladesh collapsed to 106 all out with Kagiso Rabada celebrating being the fastest to take 300 Test wickets.
The visitors took the lead, reaching 140-6 in 41 overs in reply at stumps at Mirpur, with Wiaan Mulder and Kyle Verreynne not out for 17 and 18 respectively.
Bangladesh won the toss and opted to bat but four of their top six batsmen failed to reach double figures, with opener Mahmudul Hasan Joy top-scoring with 30 on a lively pitch.
Seamers Rabada, Mulder and left-arm spinner Keshav Maharaj took three wickets apiece for South Africa.
Bangladesh were teetering at 40-4 when Rabada bowled Mushfiqur Rahim on 11, as the South African celebrated reaching the 300-wicket landmark.
He managed the feat in 11,817 balls, the fastest of all time, beating Pakistan’s Waqar Younis (12,602 balls).
Rabada soon made it 301 Test wickets, removing Litton Das for one, with Bangladesh crumbling, all out for 106 in 40.1 overs.
Right-arm seamer Hasan Mahmud brought Bangladesh the first success in the first over after the innings change, removing South African captain Aiden Markram for six off seven deliveries.
Left-arm spinner Taijul Islam — Bangladesh’s main spinner in the absence of Shakib Al Hasan — then boosted his team after he bagged a five-for, to become only the second Bangladeshi to take 200 wickets in Tests after Shakib.
Taijul accounted for Tristan Stubbs on 23, and removed David Bedingham for 11, with a low delivery that the batter edged to the keeper for a soft dismissal.
He bagged two wickets in the 28th over of South Africa’s innings, with Tony de Zorzi caught at short leg, before he clean-bowled debutant Matthew Breetzke for a duck.
The Test is the first international cricket fixture in Bangladesh since a student-led revolution toppled autocratic premier Sheikh Hasina in August.
Bangladesh are missing all-rounder Shakib after security fears forced him to cancel plans to return home.
Shakib announced his retirement from international cricket last month but said that he wanted to play one last red-ball series at home.
The 37-year-old was also a former lawmaker in the government ousted by the revolution, making him a target of public anger.
Security was heavy around the stadium, a day after fans of Shakib clashed with those protesting against the player near the venue.
Bangladesh have never beaten South Africa in a Test.
The second Test begins in Chattogram on October 29.