India grasped the initiative with four wickets in the final session after half-centuries from Aiden Markram and Hashim Amla put South Africa in a promising position on day one of the second Test.
Markram continued his impressive start to his Proteas career, striking 15 boundaries in a well-crafted 94 and Amla made 82, having been dropped by wicketkeeper Parthiv Patel on 30, but India hit back after tea at Centurion.
Spinner Ravichandran Ashwin took 3-90 and Hardik Pandya produced a moment of brilliance to run out Amla as South Africa, handing a debut to paceman Lungi Ngidi, slipped from 246-3 to 269-6 at stumps.
Ishant Sharma, recalled along with Parthiv and KL Rahul in place of Bhuvneshwar Kumar, Wriddhiman Saha and Shikhar Dhawan respectively, removed AB de Villiers in a final session which ended with India in the ascendancy after toiling for much of a hot Saturday.
Amla has made at least a fifty in 10 of the 12 Tests he has played at Centurion. He averages over 80 at the venue. #SAvInd— ESPNcricinfo stats (@ESPNcric_stats) January 13, 2018
Markram and Dean Elgar saw off the new ball on a flat pitch after Faf du Plessis won the toss, the former playing a couple of exquisite off drives when the expensive Mohammed Shami over-pitched after runs had been hard to come by.
The India quicks, Shami aside, had been well disciplined, but Jasprit Bumrah was taken for 13 in an over before Virat Kohli wasted a review for caught behind when he thought Elgar had edged Ashwin through to Parthiv.
A confident Markram reached his fifty off 81 balls and South Africa moved to 78 without loss at lunch, but Murali Vijay ended an opening stand of 85, juggling to take a catch at silly point as Ashwin tempted Elgar into a loose drive.
Markram continued to punish stray deliveries that came along and looked set for a third Test hundred in just seven visits to the crease, but fell six runs short when he feathered Ashwin through to Parthiv and failed to get the decision overturned.
A diving Parthiv was unable to hold on down the leg side after Amla edged a delivery from Ishant, who was rewarded for his endeavour by removing De Villiers, the former skipper chopping on for 20 after tea.
Amla brought up his half-century by punching Ashwin to the cover boundary and appeared destined for a 29th Test hundred, only for Pandya to swoop and unleash a bullet of a throw to run him out with a direct hit.
The Proteas lost three wickets in just 14 balls to give India the upper hand, Quinton de Kock edging the impressive Ashwin to Kohli at first slip from his first delivery before Vernon Philander was run out for a duck.
Du Plessis and Keshav Maharaj prevented further damage from being done, but they will return to the crease on Sunday morning with work to do.
|Barcelona deny Neymar talk|
|Hazard can win the Ballon d´Or as a Chelsea player, insists Sarri|
|De Bruyne in contention to start in Manchester City´s clash with Burnley|
|Neymar needs to mature to reach Messi levels - Xavi|
|We have a hell of a lot to do - Paine slams Australia batting|
|Kerber and Osaka to meet at WTA Finals|
|Lorenzo out of Japanese MotoGP|
|Real Madrid handed Africa trip in Copa del Rey|
|Allegri: Ronaldo has sharpened Juventus focus|
|No Wade in Wasps squad amid NFL reports|
|Rooney: Five of us controlled Man United dressing room|
|Bayern bosses launch scathing attack on ´disrespectful´ media|
|Saints lock in Lawes to new deal|
|Adelaide United 1 Sydney 1: Debutant Le Fondre rescues a point|
|Madrid can´t look back, only forward - Lopetegui confident of revival|
|Wimbledon to introduce final-set tie-breaks|
|Abbas inspires Pakistan to series victory|
|Madrid boss Lopetegui hopeful on Bale availability|
|Mood is positive at Bayern, insists under-pressure Kovac|
|LeBron offers food for thought after losing Lakers debut|
|Bolt future not an immediate concern for Mariners|
|Hazard: I could finish my career at Chelsea|
|Buffon hoping to avoid Champions League final against Juventus|
|Wilshere not ready for West Ham return|
|Chelsea v Manchester United: Hazard better under Sarri than he ever was with Mourinho|
|The big Friday Premier League quiz|
|Khawaja suffers meniscal tear, doubt for India series|
|Babbel: Klopp must win trophies now at Liverpool|
|LeBron makes spectacular start on Lakers debut, but LA fall to Trail Blazers|
|Broncos thrash Cardinals to end losing streak|
|Price leads Red Sox past Astros and into World Series|
|LeBron makes fast start on Lakers debut with two massive dunks|
|Real Salt Lake 4 New England Revolution 1: Hosts boost play-off chances|
|Simmons gets triple-double in win over Bulls|
|´Ambitious´ Maguire wants Champions League football|
|Henry praises ´charismatic leader´ Falcao|
|WATCH: Cardinals WR Fitzgerald tackles former QB Warner on sidelines|
|Spurs right not to make signings – Pochettino|
|Icardi happy at Inter, close to contract renewal|
|This Week in U.S. Sports: Bosa leaves Ohio State while the World Series is almost set|
|Liverpool boost as Salah and Van Dijk join training|
|Cowboys discuss road woes, Prescott says team ´addressed the elephant in the room´|
|Isner scrapes through in Stockholm, Monfils eliminates Tsonga|
|Hinch says Altuve would be out with injury in regular season|
|WATCH: Schwarzenegger tells LeBron to make Lakers great again|
|LeBron tells Lakers coach Walton: I´m always fresh!|
|Mayweather should come back to fight me - Alvarez|
|Goerges battles past Vekic, Kasatkina wins all-Russian tie|
|Ask 32,000 Gibraltarians if the Nations League is meaningless - Styche|
|They´re going to speak about it for years - Azhar reflects on comical run out|
|Garcia in the mix as weather hits Andalucia Valderrama Masters|
|From lacking a ´football brain´ to signing a new contract – the Mourinho-Shaw saga|
|Alonso teases Indy 500 return as Hamilton reveals NASCAR temptation|
|Guptill ruled out of Black Caps´ UAE tour|
|UEFA investigating PSG-Red Star fan clashes|
|Just ´another weekend´ for champion-elect Hamilton|
|G League will offer $125K to top prospects in lieu of NCAA one-and-done route|
|Chargers defensive end Bosa ´a few weeks´ away from return, says father|
|Bale back in full Real Madrid training|
|Roma supporter found not guilty of inflicting GBH on Liverpool fan Sean Cox|
|´Fantastic´ Neuer will prove he´s still the best, says Lloris|
|Perez secures Force India stay|
|Australia wait on Khawaja scan|
|Shaw signs Manchester United extension|
|Jones lays down challenge to snubbed England star Cipriani|
|West Ham´s Pellegrini rejects Dzeko speculation|
|Emery fails to assure Ramsey of Arsenal future|
|Pakistan on course for victory after Babar 99 and farcical run out|
|Canelo ready to leave comfort zone to face Fielding|
|Eriksen ready for Tottenham return, Pochettino confirms|