Returns attribute information for a specified symbolic link file. Note that F$SYMLINK_ATTRIBUTES returns information for a specified symbolic link file, and not the target of the symbolic link. For information about the target file of a symbolic link, use F$FILE_ATTRIBUTES. Format F$SYMLINK_ATTRIBUTES(filespec,item)
1 – Return Value
Either an integer or a character string, depending on the item you request.
2 – Arguments
filespec Specifies the name of the symlink file for which you are requesting information. You must specify the file name as a character string expression. Only one file name can be specified at a time and wildcard characters are not allowed. item Indicates the attribute of the symlink file that must be returned. The item argument must be specified as a character string expression, and can be any one of the OpenVMS RMS field names listed in the following table: Return Item Type Information Returned AI String TRUE if after-image (AI) journaling is enabled; FALSE if disabled. ALQ Integer Allocation quantity. BDT String Backup date/time. BI String TRUE if before-image (BI) journaling is enabled; FALSE if disabled. BKS Integer Bucket size. BLS Integer Block size. CBT String TRUE if contiguous-best-try; otherwise FALSE. CDT String Creation date/time. CTG String TRUE if contiguous; otherwise FALSE. DEQ Integer Default extension quantity. DID String Directory ID string. DIRECTORY String Returns TRUE or FALSE. Returns TRUE if it is a directory. DVI String Device name string. EDT String Expiration date/time. EOF Integer Number of blocks used. ERASE String TRUE if a file's contents are erased before a file is deleted; otherwise FALSE. FFB Integer First free byte. FID String File ID string. FILE_ String Record count and data byte count in the form LENGTH_ (n,m), where n is the record count and m is HINT the data byte count. An invalidated count is specified by a -1 for n or m. FSZ Integer Fixed control area size. GBC Integer Global buffer count. GBC32 Integer Enhanced longword version of global buffer count with a per-file maximum size of about 2.1 billion for indexed files. GBCFLAGS String Per-file management flags for sizing of global buffer cache. Returns PERCENT if global buffer count is expresses as a percent, DEFAULT if global buffer size is determined at runtime by an algorithm using two global buffer SYSGEN parameters (GB_ CACHEALLMAX and GB_DEFPERCENT); or NONE if no per-file management flags are enabled for the file. GRP Integer Owner group number. JOURNAL_ String TRUE if the file is a journal; otherwise FILE FALSE. KNOWN String Known file; returns TRUE or FALSE to indicate whether file is installed with the Install utility (INSTALL). However, returns NOSUCHFILE if a file does not exist (for example, the file has been installed but subsequently deleted). LOCKED String TRUE if a file is deaccessed-locked; otherwise FALSE. LRL Integer Longest record length. MBM Integer Owner member number. MOVE String TRUE if movefile operations are enabled; otherwise FALSE. MRN Integer This is not applicable. MRS Integer Maximum record size. NOA Integer This is not applicable. NOBACKUP String FALSE if the file is marked for backup; TRUE if the file is marked NOBACKUP. NOK Integer This is not applicable. ORG String File organization; returns SEQ, REL, IDX. PRESHELVED String TRUE if the file is preshelved; otherwise (Alpha/Integrity FALSE. servers only) PRO String File protection string. PVN Integer This is not applicable. RAT String Record attributes; returns CR, PRN, FTN, "". RCK String TRUE if read check; otherwise FALSE. RDT String Revision date/time. RFM String Record format string; returns the values VAR, FIX, VFC, UDF, STM, STMLF, STMCR. RU String TRUE if recovery unit (RU) journaling is enabled; returns TRUE or FALSE. RVN Integer Revision number. SHELVABLE String TRUE if the file is shelvable; otherwise FALSE. SHELVED String TRUE if the file is shelved; otherwise FALSE. STORED_ String ASCII string that represents stored SEMANTICS semantics. UIC String Owner user identification code (UIC) string. VERLIMIT Integer Version limit number. The value 32767 indicates that no version limit was set. WCK String TRUE if write check; otherwise FALSE.
3 – Example
$ DIR/LINK/FILE Directory SYS$SYSDEVICE:[EXAMPLES] TARGET.TXT;1 (5601,12,0) FOO.LNK;1 -> TARGET.TXT (5600,12,0) Total of 2 files. $ FID_FILE = F$FILE_ATTRIBUTES("FOO.LNK","FID") $ FID_SYM = F$SYMLINK_ATTRIBUTES("FOO.LNK","FID") $ SHOW SYMBOL FID_FILE FID_FILE = "(5601,12,0)" $ SHOW SYMBOL FID_SYM FID_SYM = "(5600,12,0)" This example uses the F$SYMLINK_ATTRIBUTES function to return information about the symbolic link file FOO.LNK.