PITTSBURGH -- For all the talk about mechanical adjustments, arm slots, pitch location and selection, it turned out Zach Duke needed to do only one thing to again be the pitcher he was last season.
Duke bounced back from the worst start of his short major league career to limit Chicago to a run over seven innings, and the Pirates beat the Cubs in Pittsburgh for the first time in exactly a year by winning 2-1 Saturday night.
"Basically, he pitched his game," said manager Jim Tracy, who started his news conference by joking he would answer no more questions about the perceived mechanical makeover of Duke. "There was too much made of that. In his previous start, he tried to be a different pitcher other than what he is -- a pitcher who throws strikes with his sinker, pounds the strike zone and throws early count strikes."
Duke (1-1) allowed seven runs in five innings in an 8-3 loss Monday to the Dodgers, a performance that mirrored a mostly poor spring training. The 22-year-old left-hander was fifth in the NL Rookie of the Year voting last year after going 8-2 with a 1.81 ERA.
Against the Cubs, Duke again was the pitcher who twice beat the Cubs and 300-game winner Greg Maddux following his midseason recall last season. He allowed three hits over six shutout innings before Aramis Ramirez doubled and scored on Matt Murton's two-out single in the seventh.
"I went back to my game plan," Duke said. "I hadn't been myself out there. It was nice to get back to being me on the mound. I was rushing through everything against LA, but I was able to stay back tonight and was consistent."
Duke threw 104 pitches, 71 for strikes, walking one and striking out five. He was uncharacteristically wild against the Dodgers, throwing 48 of 94 pitches for strikes.
Duke is the first Pirates starter to last longer than six innings.
"With the exception of a couple of hitters, he's ahead of everybody," Tracy said. "I can think of two pitches he threw that didn't go precisely where he wanted them to go. That's pretty special."
The Pirates ended an eight-game home losing streak to Chicago that dated to April 15, 2005. The Cubs had won 12 of 13 overall from Pittsburgh since then. Duke's excellent outing also helped the Pirates avoid their first 3-10 start since the lockout-shortened 1995 season.
Craig A. Wilson, now the Pirates' everyday first baseman with Sean Casey out for up to two months with a back injury, tripled and scored both runs against Jerome Williams (0-1). Wilson also made an excellent defensive play on the final batter Duke faced, controlling Todd Walker's high-bouncing grounder with two on base and flipping it to Duke to get out of a jam in the seventh.
"Duke was masterful," Cubs manager Dusty Baker said. "That's what beat us. It looked like Duke was fading some, we had some action, but we couldn't get that big hit."
Chicago also threatened against Roberto Hernandez in the eighth when Jerry Hairston Jr. singled and Derrek Lee walked. Hernandez, who is unscored upon in seven appearances, got Ramirez on a short fly ball and struck out Michael Barrett.
Mike Gonzalez pitched a perfect ninth for his second save in two opportunities, throwing only four pitches to give Duke his first victory since beating Milwaukee in the Pirates' last game in 2005.
Williams was effective in his first start this season, and his first in Pittsburgh since beating the Pirates 2-0 with 7 1/3 shutout innings on Sept. 4. He gave up four hits and one earned run over six innings.
"I feel real confident out there," Williams said. "Everything was working, my offspeed pitches, my slider, sinker, just having everything in that zone makes the batter feel off a little bit."
The Pirates got their first run against Williams in the second when Wilson walked, stole second and scored on shortstop Ronny Cedeno's two-out throwing error on Humberto Cota 's grounder. Wilson tripled off the right-field wall to start the Pirates' sixth and scored on Joe Randa's sacrifice fly.
- Cubs OF Angel Pagan apparently injured a hamstring while running out a grounder in the fifth. He will return to Chicago on Sunday to be examined by team doctors.
- Gonzalez has thrown only nine pitches in getting his two saves.
- Murton had his third consecutive multihit game.
- Duke has an 0.78 ERA in his three starts against the Cubs.
- Casey sustained two fractures in his lower back while fielding a throw Friday night.
- The Pirates' Jason Bay went 0-for-0 despite batting four times. He walked three times and was hit by a pitch.