1File::Spec::VMS(3pm)   Perl Programmers Reference Guide   File::Spec::VMS(3pm)
2
3
4

NAME

6       File::Spec::VMS - methods for VMS file specs
7

SYNOPSIS

9        require File::Spec::VMS; # Done internally by File::Spec if needed
10

DESCRIPTION

12       See File::Spec::Unix for a documentation of the methods provided there.
13       This package overrides the implementation of these methods, not the
14       semantics.
15
16       The mode of operation of these routines depend on the VMS features that
17       are controlled by the DECC features "DECC$FILENAME_REPORT_UNIX" and
18       "DECC$EFS_CHARSET".
19
20       Perl needs to be at least at 5.10 for these feature settings to work.
21       Use of them on older perl versions on VMS will result in unpredictable
22       operations.
23
24       The default and traditional mode of these routines have been to expect
25       VMS syntax on input and to return VMS syntax on output, even when Unix
26       syntax was given on input.
27
28       The default and traditional mode is also incompatible with the VMS
29       "EFS", Extended File system character set, and with running Perl
30       scripts under <GNV>, Gnu is not VMS, an optional Unix like runtime
31       environment on VMS.
32
33       If the "DECC$EFS_CHARSET" feature is enabled, These routines will now
34       accept either VMS or UNIX syntax.  If the input parameters are clearly
35       VMS syntax, the return value will be in VMS syntax.  If the input
36       parameters are clearly in Unix syntax, the output will be in Unix
37       syntax.
38
39       This corresponds to the way that the VMS C library routines have always
40       handled filenames, and what a programmer who has not specifically read
41       this pod before would also expect.
42
43       If the "DECC$FILENAME_REPORT_UNIX" feature is enabled, then if the
44       output syntax can not be determined from the input syntax, the output
45       syntax will be UNIX.  If the feature is not enabled, VMS output will be
46       the default.
47
48       canonpath (override)
49           Removes redundant portions of file specifications according to the
50           syntax detected.
51
52       catdir (override)
53           Concatenates a list of file specifications, and returns the result
54           as a directory specification.  No check is made for "impossible"
55           cases (e.g. elements other than the first being absolute
56           filespecs).
57
58       catfile (override)
59           Concatenates a list of directory specifications with a filename
60           specification to build a path.
61
62       curdir (override)
63           Returns a string representation of the current directory: '[]' or
64           '.'
65
66       devnull (override)
67           Returns a string representation of the null device: '_NLA0:' or
68           '/dev/null'
69
70       rootdir (override)
71           Returns a string representation of the root directory:
72           'SYS$DISK:[000000]' or '/'
73
74       tmpdir (override)
75           Returns a string representation of the first writable directory
76           from the following list or '' if none are writable:
77
78               /tmp if C<DECC$FILENAME_REPORT_UNIX> is enabled.
79               sys$scratch:
80               $ENV{TMPDIR}
81
82           Since perl 5.8.0, if running under taint mode, and if $ENV{TMPDIR}
83           is tainted, it is not used.
84
85       updir (override)
86           Returns a string representation of the parent directory: '[-]' or
87           '..'
88
89       case_tolerant (override)
90           VMS file specification syntax is case-tolerant.
91
92       path (override)
93           Translate logical name DCL$PATH as a searchlist, rather than trying
94           to "split" string value of $ENV{'PATH'}.
95
96       file_name_is_absolute (override)
97           Checks for VMS directory spec as well as Unix separators.
98
99       splitpath (override)
100               ($volume,$directories,$file) = File::Spec->splitpath( $path );
101               ($volume,$directories,$file) = File::Spec->splitpath( $path, $no_file );
102
103           Passing a true value for $no_file indicates that the path being
104           split only contains directory components, even on systems where you
105           can usually (when not supporting a foreign syntax) tell the
106           difference between directories and files at a glance.
107
108       splitdir (override)
109           Split a directory specification into the components.
110
111       catpath (override)
112           Construct a complete filespec.
113
114       abs2rel (override)
115           Attempt to convert a file specification to a relative
116           specification.  On a system with volumes, like VMS, this may not be
117           possible.
118
119       rel2abs (override)
120           Return an absolute file specification from a relative one.
121
123       Copyright (c) 2004 by the Perl 5 Porters.  All rights reserved.
124
125       This program is free software; you can redistribute it and/or modify it
126       under the same terms as Perl itself.
127

SEE ALSO

129       See File::Spec and File::Spec::Unix.  This package overrides the
130       implementation of these methods, not the semantics.
131
132       An explanation of VMS file specs can be found at
133       "/h71000.www7.hp.com/doc/731FINAL/4506/4506pro_014.html#apps_locating_naming_files""
134       in "http:.
135
136
137
138perl v5.10.1                      2009-05-10              File::Spec::VMS(3pm)
Impressum