Please enable JavaScript to view this site.

A-Shell Reference

DELETE = <Boolean>

The DELETE switch controls whether the file is deleted after printing. (Default is OFF.)

Under Windows, this option is under A-Shell’s control, and works reliably. However, under Unix, unless A-Shell is building a temporary file to pass to the spooler (which it does to implement certain features, such as STRIPFF, AUTOFF, PREFIX and SUFFIX), A-Shell has to rely on the spooler itself to delete the file when it is done being printed. This is accomplished by passing a switch to the line printer request command (e.g. lpr, lp, enq). In some cases, particularly with Unix, this option may be "deprecated" and may not even work, due to the security issues that arise when a user is allowed to indirectly delete files via the line printer daemon (which typically operates under a different security environment than the original user.) Refer to the documentation (or "man" page) for the line printer for your operating system for more details about this if it is found to be a problem.

One way to overcome an inability of your spooler to delete files is to add the –c switch to your DEVICEpq command to cause the spooler to make its own local copy of the print file before printing it. This would allow your application to immediately delete the print file after sending it to the spooler, using the ASB KILL command.

Another workaround would be to create an empty SUFFIX file, which will force A-Shell to create a temporary file combining your original file with the empty suffix. In this case, if you specify the DELETE option, A-Shell will delete the original file immediately after constructing the temporary file. The temporary files are located either in the same directory where miame.ini exists, or in a directory specified by defining an environment variable ASHTMP (e.g. export ASHTMP=/vm/tmp). You could then create an automated procedure (using cron) to remove all of the undeleted temporary files from this directory, say, every midnight.