Sean Marshall gave up one run in six innings, Jacque Jones had four hits and the Cubs defeated Arizona 6-2 on Friday night in a showdown of NL division leaders.
The left-handed Marshall (7-6) cruised through a lineup with eight right-handed hitters, allowing two hits in six innings. He walked one and struck out five.
Arizona's lead in the NL West shrunk to two games over San Diego.
Ryan Dempster got one out in the ninth for his 21st save in 23 chances.
With throngs of vociferous Cubs fans invading Chase Field, the game had a playoff atmosphere. The Cubs have long had a devoted following in the Phoenix area, where they've trained since 1967.
Early on, the Cubs gave their fans plenty to cheer about. Micah Owings struggled through a 36-pitch first inning as the Cubs took a 2-0 lead on RBI singles by Derrek Lee and Mark DeRosa.
Owings (6-7) made it 2-1 in the third when he drove Marshall's first pitch 386 feet into the left field seats for his fourth home run, and his third in five at-bats. Owings homered twice in a four-hit game at Atlanta Aug. 18.
That was the only hit Marshall allowed until Chris Snyder led off the fifth with a double. Snyder moved to third on a wild pitch, but shortstop Ryan Theriot nailed Snyder at the plate on a grounder to the hole to kill the threat.
The Cubs made it 3-1 in the sixth. Jacque Jones led off with a double, took third on Lee's fly to center and scored on Aramis Ramirez' sacrifice fly to left.