VMS Help
RTL Routines, LIB$, LIB$RENAME_FILE
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
The Rename One or More Files routine changes the names of one
or more files. The specification of the files to be renamed can
include wildcards.
LIB$RENAME_FILE is similar in function to the DCL command RENAME.
Format
LIB$RENAME_FILE old-filespec ,new-filespec
[,default-filespec] [,related-filespec]
[,flags] [,user-success-procedure]
[,user-error-procedure]
[,user-confirm-procedure]
[,user-specified-argument]
[,old-resultant-name] [,new-resultant-name]
[,file-scan-context]
OpenVMS usage:cond_value
type: longword (unsigned)
access: write only
mechanism: by value
old-filespec
OpenVMS usage:char_string
type: character string
access: read only
mechanism: by descriptor
File specification of the files to be renamed. The old-filespec
argument is the address of a descriptor pointing to the old file
specification. The specification may include wildcards, in which
case each file that matches the specification will be renamed. If
running on Alpha and flag LIB$M_FIL_LONG_NAMES is set, the string
must not contain more characters than specified by NAML$C_MAXRSS,
otherwise the string must not contain more than 255 characters.
Any string class is supported.
new-filespec
OpenVMS usage:char_string
type: character string
access: read only
mechanism: by descriptor
File specification for the new file names. The new-filespec
argument is the address of a descriptor pointing to the new file
specification.
This specification need not be complete; fields omitted or
specified by using the wildcard character (*) will be filled
in from the existing file's name using the same rules as for the
DCL command RENAME. If running on Alpha and flag LIB$M_FIL_LONG_
NAMES is set, the string must not contain more characters than
specified by NAML$C_MAXRSS, otherwise the string must not contain
more than 255 characters. Any string class is supported.
default-filespec
OpenVMS usage:char_string
type: character string
access: read only
mechanism: by descriptor
Default file specification of the files to be renamed. The
default-filespec argument is the address of a descriptor pointing
to the default file specification.
This is an optional argument; if omitted, the default is the
null string. See the OpenVMS Record Management Services Reference
Manual for information on default file specifications. If running
on Alpha and flag LIB$M_FIL_LONG_NAMES is set, the string must
not contain more characters than specified by NAML$C_MAXRSS,
otherwise the string must not contain more than 255 characters.
Any string class is supported.
related-filespec
OpenVMS usage:char_string
type: character string
access: read only
mechanism: by descriptor
Related file specification of the files to be renamed. The
related-filespec argument is the address of a descriptor pointing
to the related file specification. This is an optional argument;
if omitted, the default is the null string. Any string class is
supported.
Input file parsing is used. (See the OpenVMS Record Management
Services Reference Manual for information on related file
specifications and input file parsing.)
The related file specification is useful when you are processing
lists of file specifications. Unspecified portions of the file
specification are inherited from the last file processed. Any
string class is supported. This is an optional argument.
flags
OpenVMS usage:mask_longword
type: longword (unsigned)
access: read only
mechanism: by reference
Longword of flag bits designating optional behavior. The flags
argument is the address of an unsigned longword containing the
flag bits. This is an optional argument; if omitted, the default
is that all flags are clear.
The bit number and its meaning are as follows:
Bit Symbol Description
0 LIB$M_FIL_CUR_VER If new-filespec does not specify a
version number, this flag controls
whether a new version number for the
output file is to be assigned. If this
bit is set, the current version number of
the file is used.
If this bit is clear, the file is given
a version number 1 higher than any
previously existing file of the same file
name and file type. This is the default
action.
If a file already exists with the same file name, type and version
number, the error RMS$_FEX is given. This flag is equivalent to the
2.1 - /NONEW_VERSION qualifier of the DCL command RENAME.)
1 LIB$M_FIL_INH_ Controls whether the renamed file
SECUR takes on security attributes of the new
location or keeps its existing security
attributes. If this bit is clear, the
attributes of the renamed file are
inherited from the next lower version
of the new file name, if any, the new
parent directory, or both.
If this bit is clear, the file's security
attributes are not changed; this is the
default action.
For more information on file security, see the OpenVMS Guide to
System Security. This flag is equivalent to the /INHERIT_SECURITY
qualifier of the DCL command RENAME.)
2 LIB$M_FIL_LONG_ (Alpha only) Controls whether to accept
NAMES file specifications greater than 255
characters in length. If this bit is
set, LIB$RENAME_FILE can process files
specifications with a maximum length of
NAML$C_MAXRSS characters.
If this bit is clear, LIB$RENAME_FILE can
process files names with a maximum length
of 255 characters.
user-success-procedure
OpenVMS usage:procedure
type: procedure value
access: function call (before return)
mechanism: by value
User-supplied success routine that LIB$RENAME_FILE calls after
each successful rename.
user-error-procedure
OpenVMS usage:procedure
type: procedure value
access: function call (before return)
mechanism: by value
User-supplied error routine that LIB$RENAME_FILE calls when
it detects an error. The value returned by the error routine
determines whether LIB$RENAME_FILE processes more files.
user-confirm-procedure
OpenVMS usage:procedure
type: procedure value
access: function call (before return)
mechanism: by value
User-supplied confirm routine that LIB$RENAME_FILE calls before
it renames a file. The value returned by the confirm routine
determines whether or not LIB$RENAME_FILE renames the file.
The confirm routine can be used to select specific files for
renaming based on criteria such as expiration date, size, and so
on.
user-specified-argument
OpenVMS usage:user_arg
type: longword (unsigned)
access: read only
mechanism: by value
Value that LIB$RENAME_FILE passes to the success, error, and
confirm routines each time they are called. Whatever mechanism
is used to pass user-specified-argument to LIB$RENAME_FILE is
also used to pass it to the user-supplied routines. This is an
optional argument; if omitted, zero is passed by value.
old-resultant-name
OpenVMS usage:char_string
type: character string
access: write only
mechanism: by descriptor
String into which LIB$RENAME_FILE copies the old resultant file
specification of the last file processed. This is an optional
argument. If present, it is used to store the file specification
passed to the user-supplied routines instead of a default class
S, type T string. Any string class is supported.
If you are specifying one or more of the action routine
arguments, be sure that the descriptor class used to pass
resultant-name is the same as the descriptor class required by
the action routine. For example, VAX Ada requires a class SB
descriptor for string arguments to Ada routines, but will use
a class A descriptor by default when calling external routines.
Refer to your language manual to determine the proper descriptor
class to use.
new-resultant-name
OpenVMS usage:char_string
type: character string
access: write only
mechanism: by descriptor
String into which LIB$RENAME_FILE writes the new OpenVMS RMS
resultant file specification of the last file processed. The new-
resultant-name argument is the address of a descriptor pointing
to the new name. This is an optional argument. If present, it is
used to store the file specification passed to the user-supplied
routines instead of a class S, type T string. Any string class is
supported.
If you are specifying one or more of the action routine
arguments, be sure that the descriptor class used to pass
resultant-name is the same as the descriptor class required by
the action routine. For example, VAX Ada requires a class SB
descriptor for string arguments to Ada routines, but will use
a class A descriptor by default when calling external routines.
Refer to your language manual to determine the proper descriptor
class to use.
file-scan-context
OpenVMS usage:context
type: longword (unsigned)
access: modify
mechanism: by reference
Context for renaming a list of file specifications. The file-
scan-context is the address of a longword that contains this
context. You must initialize this longword to zero before the
first of a series of calls to LIB$RENAME_FILE. LIB$RENAME_
FILE uses the file scan context to retain the file context for
multiple input files.
LIB$FILE_SCAN uses this context to retain multiple input file
related file context. This is an optional argument; it need only
be specified if you are using multiple input files, as the DCL
command RENAME does. You may deallocate the context allocated by
LIB$FILE_SCAN while processing the LIB$RENAME_FILE requests by
calling LIB$FILE_SCAN_END after all calls to LIB$RENAME_FILE have
been completed. See the description of LIB$FILE_SCAN for a more
detailed description of this argument.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.