#!/bin/perl # I wrote this script to enable printing from XEmacs, which expects # a printing command which accepts text from *standard input*. # So, this script reads the standard input, diverts it to a file, # then calls Windows NT lpr with this file and any options given # on the command line. my $command = "lpr"; srand; # seeds the random number generator # lpr expects interprets its arguments in the DOS context, taking backslashes $filestub = "\\tmp\\lp".(time%10000)."."; do { $filename = $filestub.int(rand(1000)); } while (-e $filename); open SLURP, ">$filename"; print SLURP ; # put everything from stdin into this file close SLURP; my @args = ($command, @ARGV, $filename); system(@args) == 0 or die "system @args failed: $?"; unlink $filename;