Paul Skenes has shown a knack for navigating tough situations and limiting damage so far into his young MLB career.

He had to do both Tuesday at Wrigley Field vs. the Chicago Cubs, with Skenes lasting only five innings and needing 100 pitches to get that far.

But the Pittsburgh Pirates rookie still managed to blank the Cubs even without his best stuff, helping his club to a 5-0 win.

With the Pirates up 2-0 in the seventh, Jared Triolo hit a three-run homer to pad the lead.

Skenes (9-2, 2.13 ERA) picked up the win, allowing four hits with six strikeouts, but he walked four, tying a career-high set on Aug. 16 vs. Seattle.

“It was execution of the breaking ball,” manager Derek Shelton said on the SportsNet Pittsburgh postgame show. “He just wasn’t landing it as consistently. (Chicago) is a good club with veteran hitters. They fouled off a ton of pitches and really made him work.”

The Pirates (65-73) took a 1-0 lead in the third, courtesy of an Andrew McCutchen sacrifice fly that scored Isiah Kiner-Falefa, who singled.

McCutchen had battled back from an 0-2 count and also moved Oneil Cruz, who got aboard via a force out before stealing second base, over to third.

That set up Rowdy Tellez, who plated Cruz with an RBI base hit off the glove of Michael Busch at first, giving the Pirates a 2-0 lead.

Skenes needed 27 pitches to complete the first inning.

The Cubs loaded the bases with two outs, but Skenes escaped the jam.

The second inning was similarly labor-intensive for Skenes, who again loaded the bases and threw another 27 pitches but kept Chicago off the scoreboard.

Command issues were partly to blame, as Skenes had three walks through the first two frames.

He walked his fourth batter of the night in the third but, again, averted any damage.

An efficient 11-pitch fourth put Skenes at 88 pitches, and Shelton allowed him to start the fifth for a chance to qualify for a win.

Skenes took care of business, retiring the Cubs in order.

“Just had to get back to execution and pull up the changeup a little bit more today than I have in the past,” Skenes said. “At the end of the day, it’s just execution. … Had to reach into the bag of tricks a little bit, but it worked out.”

Cubs starter Kyle Hendricks (3-11), whom Skenes has faced in three of his four starts against Chicago, struck out five in as many frames, taking the loss.

The Pirates turned to Colin Holderman in the sixth, and he was effective in his first outing in nearly a month since returning from the injured list.

In the seventh, Nick Gonzales singled and Connor Joe walked against Cubs reliever Tyson Miller.

After Yasmani Grandal laid down a sacrifice bunt, Triolo crushed the second pitch he saw from Miller for a three-run, line-drive homer to left field.

In the seventh, Carmen Mlodzinski preserved the shutout, navigating around a one-out single by Ian Happ.

Mlodzinski stayed on in the eighth, pitching a scoreless frame before David Bednar took over in the ninth.

Bednar, less than a week since being demoted from the closer’s role and appearing in a non-save situation, was sharp, retiring the Cubs in order.

McCutchen, despite collecting an RBI in the third, saw his 15-game hitting streak end.

Justin Guerriero is a TribLive reporter covering the Penguins, Pirates and college sports. A Pittsburgh native, he is a Central Catholic and University of Colorado graduate. He joined the Trib in 2022 after covering the Colorado Buffaloes for Rivals and freelancing for the Denver Post. He can be reached at jguerriero@triblive.com.