Pakistan in charge of second test after bowlers rout Sri Lanka in Colombo
Babar Azam's side, already 1-0 up in the two-test series, batted briskly to further consolidate their position and finished the opening day on 145-2.
Opener Abdullah Shafique (74) and Babar (eight) will resume on Tuesday hoping to bat Sri Lanka out of the contest with a big first-innings lead.
Earlier, Sri Lanka captain Dimuth Karunaratne was left to rue his decision to bat first after winning the toss.
Naseem Shah (3-41) and Shaheen Afridi (1-44) dented Sri Lanka's top order to leave them reeling at 36-4.
Dhananjaya de Silva top-scored for Sri Lanka with a gutsy 57 but only two other team mates managed double digits.
Pakistan were incredibly sharp in the field taking even half-chances, while Shan Masood ran out opener Nishan Madushka and tailender Prabath Jayasuriya with direct throws.
Pakistan looked in a hurry to score when they came out to bat.
Opener Imam-ul-Haq made six before being caught at gully but Shafique combined in a rapid 108-run partnership with Masood (51) to steady the ship.
Asitha Fernando claimed his second wicket when Masood fluffed his pull shot and Pakistan were threatening to overtake Sri Lanka's total when bad light stopped play.