Ryan Dempster pitched six strong innings for the Cubs, giving up only a two-run double by Lyle Overbay in the first. The Cubs scored two runs off Jeff Karstens in the second, with a line-drive solo homer by Aramis Ramirez and a sacrifice fly by Koyie Hill.
The Hill sacrifice brought home Carlos Pena, who ran into Pirates catcher Ryan Doumit. Doumit then left the game with an ankle injury.
The Cubs scored the go-ahead run on Starlin Castro's sacrifice fly in the third.
Karstens allowed three runs, two earned, in five innings, while striking out four and walking none. The Pirates got scoreless innings of relief by Chris Resop, Evan Meek and Dan McCutchen. But they couldn't manage to score against the Cubs' best relievers, as Kerry Wood, Sean Marshall and Carlos Marmol pitched scoreless innings of their own.
The Pirates will now head to New York to play a road series against the Mets, which begins Monday night.