Printing Large Files with the PIPE Device Type in UNIX Environments

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:
    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:
    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;';