When you print a file with the lp command, a symbolic link is created from the file to the /usr/spool directory. When you pipe output to the lp command, the output is copied under the /usr/spool directory.
If you experience problems printing large files using the PIPE device type, you can circumvent the problem in either of the following ways:
save the print file to a disk file and then print it with the lp command. Issue the PRINT command from the output or log window, for example:
print file='bigfile'
Exit your SAS session and print the file, or use the SAS X command to print the file from within your SAS session, for example:
x 'lp -dmylsrjt bigfile'
create a fileref using the PIPE device type that can handle large files. For example, the following fileref saves the print file to disk, prints the saved file, and then removes the file:
filename myfile pipe 'cat >bigfile;lp -dmylsrlt bigfile;rm bigfile;';