A solo goal from Roy O'Donovan kept the eircom League race alive, after Cork defeated title favourites 1-0 Shelbourne in front of a full house at Turners Cross on Friday evening.
Just before the hour Cork's top scorer O'Donovan robbed Shelbourne's Jamie Harris on the left of the penalty area. He then rounded goalkeeper Steve Williams before rolling the ball into the empty net.
Cork battled to hold onto the lead after they were reduced to ten men when midfielder Joe Gamble was shown a second yellow card with seven minutes remaining.
It was Cork City's third win from four games against Shelbourne this season, with the other match ending in a draw at Tolka Park.
The home side had the better of the opening half with goalscorer O'Donovan going close after 15 minutes when he chested down a long ball, before blasting a twenty yard effort wide of Steve Williams' goal.
Two minutes later Shels had a good chance, Ollie Cahill sent a good cross in from the left wing and Gary O'Neill just failed to connect at the far post.
In a lively opening O'Donovan headed a Billy Woods cross down onto the surface and over off the crossbar with Williams beaten.
Just after half time Neale Fenn had a shot from twelve yards out well-blocked by the visitors' half-time substitute Richie Baker straight in front of goal.
The goal on 59 minutes was created out of nothing - a long ball from Danny Murphy seemed to be covered by Shelbourne's Jamie Harris but he hesitated and was robbed by O'Donovan. O'Donovan then cut in from the edge of the penalty area and rounded Steve Williams before rolling the ball into the net for his eleventh goal of the season.
Cork were reduced to ten men with seven minutes remaining, Joe Gamble kicked the ball away after a free-kick and received a second yellow card fron Dublin referee Ian Stokes. Gamble and fellow midfielder Colin O'Brien will both miss the last game of the season in Derry.
The result from Turners Cross means the title race goes to the last night of the season.
CORK CITY: Devine; Horgan, Bennett, Murray, Murphy; Woods, Gamble, O'Brien, Lordan; Fenn, O'Donovan.
Substitutes; B O'Callaghan for Lordan 79 mins, Softic
for Fenn 85 and Behan for O'Donovan 88.
SHELBOURNE: Williams; Dillon, Harris, Hawkins, Rogers; Cahill, O'Halloran, Byrne, Moore; Crowe, O'Neill. Substitutes; Baker for Moore h/t, J Byrne for O'Neill 60, Heary for Cahill(inj)75.
Referee. Ian Stokes (Dublin).