MIAMI - For the Giants, it was better luck this time in Miami.
Brett Tomko pitched a four-hitter for his first career shutout, and San Francisco beat the Marlins 5-0 Thursday night.
Wrapping up their first visit to South Florida since being eliminated in the playoffs in October, the Giants took the finale of the three-game series.
San Francisco remained one game behind wild-card leader Chicago. The defending World Series champion Marlins fell seven back and show no sign of mounting another late-season surge.
Tomko made sure the crowd of 29,638 had little to cheer about. He pitched his first complete game this season, allowing four singles and one walk while striking out four. Tomko improved to 5-0 in seven starts against the Marlins.
Ray Durham hit a two-run homer to give Tomko all the runs he needed.
Barry Bonds failed to hit the ball out of the infield and went 0-for-4 with a walk, dropping his average to .362, still best in the National League. Since hitting a homer off Brad Penny in April, Bonds is 0-for-10 against the Marlins with 15 walks.
Josh Beckett pitched 51/3 innings and left trailing 4-0.
Beckett retired the first eight, then walked Tomko. Durham followed with his 14th home run to put the Giants ahead 2-0.
Pedro Feliz doubled to start the fourth and scored on A.J. Pierzynski's single. After a two-out walk, Deivi Cruz hit a run-scoring single to make the score 4-0.
CUBS 8, ASTROS 3: Sammy Sosa and Aramis Ramirez hit consecutive homers in a five-run third as host Chicago won its fifth straight.
Mark Prior needed 116 pitches to get through six innings but got his first win in three weeks. He gave up seven hits, including Jeff Bagwell's 19th homer, and escaped a second-and-third, no-out jam in the sixth.
The Cubs, who lead the wild-card race, won for the ninth time in 12 games. Houston lost its third in 11 games and fell seven behind Chicago.
Nomar Garciaparra went 2-for-5 with an RBI while wife Mia Hamm played for the U.S. women's soccer team in its 2-1 win over Brazil in the gold-medal game of the Olympics.
Former Devil Rays reliever Brandon Backe, who five days earlier shut out the Cubs for seven innings in his first major-league start, gave up seven runs and nine hits in three-plus innings.
DODGERS 10, EXPOS 3: Adrian Beltre hit his major-league-leading 41st homer for Los Angeles, and Eric Gagne was cheered wildly in what likely was his final game in his hometown.
Despite a seven-run lead, the Dodgers used Gagne in the ninth. The Montreal native, pitching at home for the first time since winning last season's Cy Young Award, drew attention when he started warming up, and the crowd of 18,520, the Expos' third highest at home this season, gave him a standing ovation when he pitched. He retired three in a row after a leadoff walk.
The Expos, who joined the majors in 1969, are expected to move next year.
BRAVES 6, ROCKIES 4: Former Crystal River standout Mike Hampton helped himself with a run-scoring single, and host Atlanta pushed its East lead to a season-high 91/2 games. The Braves completed a three-game sweep and won their fourth in a row overall. Colorado has lost four straight. Rookie Charles Thomas drove in two, and every Atlanta starter had at least one hit. The Braves finished with 11 hits and have reached double digits in six straight games.
PADRES 10, METS 3: Adam Eaton shut down New York through seven innings to win his seventh straight road start, and San Diego completed a four-game sweep. The Mets, who lost their fifth straight, never held a lead during the series and were outscored 26-8, with half their runs coming in the ninth inning.
REDS 1, CARDINALS 0: Aaron Harang pitched a three-hitter for his first career complete game and Sean Casey homered to lead host Cincinnati. The Reds took two of three from the Cardinals, who had won eight straight series since dropping two of three July 23-25 at home against San Francisco.