If you are writing a perl program that needs to unlink
a file and also run on VMS then try to keep track of
how many distinct times you have opened it for write or
append access then unlink the same number of times.
The reason for doing so is that the VMS file system provides automatic
file versioning, hence if you
open FH ">foo.txt";
print FH "blah"
close FH;
open FH1 ">foo.txt";
print FH1 "blah"
close FH1;
unlink "foo.txt"; # `DELETE FOO.TXT;2`
if ($^O eq 'VMS') { unlink "foo.txt" } # `DELETE FOO.TXT;1`
Of course if it is difficult or impossible to know how many
times a file has been opened for writing or appending (such
as often is the case with temp files or regression test output cleanup)
then there is a strange little idiom that works on VMS
and all other perl implementations (such as Unix):
1 while unlink $filename;
Gets rid of it.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|