I think it depends on the output. Most tasks generate code, and it should be posible to use Proc PrintTo and the name of the printer to direct the output directly to the device.
Mind you, I'm not sure why you would. It sounds terribly dangerous to me. All it takes is some unexpected data producing 30000 lines of output and an awful lot of paper is produced unattended. The danger of having network printers with 5000 sheet hoppers is that you can empty the hopper with a stupid print request, and the paper almost invariably ends up as an unread door stop in someone's office.
Back in the good old days, we ran our mainframe SAS jobs in multiple steps where the output was produced to a list file and in a new session the output was released to the output destination only after the amount was checked and found to be acceptable. Indeed, to avoid real stupidity, we sometimes set passwords on the output that changed with each job iteration and releasing the output required request / confirmation / authentication processes to stop mindless waste.
Nowadays, I send output to browsable files and printing the output is an option for the person checking the output. Since EG is so well structured around the paradigm of producing output in many different forms of file, I would not be using it to waste any more trees.
Kind regards
David