Pedro Alvarez hit the go-ahead RBI double in the sixth inning, as Pittsburgh came away with a 3-2 win over Miami in the opener of a two-game series.
Rod Barajas collected two hits including a home run for the Pirates, who have won three straight.
Brad Lincoln (3-0) tossed six innings of four-hit, two-run ball for the victory. Joel Hanrahan saw to it that Miami couldn't put together another walk-off win, retiring the side in order in the ninth for his seventh save.
"We couldn't come through," said Marlins manager Ozzie Guillen.
Hanley Ramirez homered among his two hits for the Marlins, who have dropped two of three.
Anibal Sanchez (2-1) took the loss, charged with six hits and three runs over seven full frames.
Andrew McCutchen began the winning frame with a one-out single, then raced home when Alvarez sliced his double to left.
Lincoln ended his outing with a 1-2-3 inning, then Jared Hughes tossed a scoreless seventh. Jason Grilli stranded runners on the corners in the eighth by forcing Sunday's hero Giancarlo Stanton -- who capped a six-run ninth- inning rally with a grand slam to beat the Mets -- into an inning-ending pop out.
"I was going out there and giving them what I got," said Lincoln. "That's what they asked of me and I did that. For me, it was just go out there and attack the zone, be efficient and try to get some quick innings and get deep into the game to try and save the bullpen a little bit."
McCutchen's sacrifice fly in the first put the visitors on the board, but Ramirez hit a two-out solo shot in the home half.
Barajas restored the Bucs' one-run edge on a two-out blast of his own in the second, but Emilio Bonifacio singled home Logan Morrison in the fourth to knot the game, 2-2.
Pittsburgh snapped an eight-game losing streak to the Marlins, dating back to October 1, 2010...The Bucs went 0-6 against Florida in 2011...Despite the loss, the Marlins have beaten the Pirates in 12 of the last 14 meetings since August of 2010.