Functions and CALL Routines under z/OS |
Returns information about a directory.
Category: |
External Files
|
z/OS specifics: |
info-item
|
See: |
DINFO Function in
SAS Language Reference: Dictionary
|
DINFO(directory-id, info-item)
|
-
directory-id
-
specifies the identifier that was assigned
when the directory was opened, generally by the DOPEN function.
-
info-item
-
specifies the information item to be retrieved.
DINFO returns a blank if the value of the info-item
argument is invalid. The information available varies according to the operating
environment. The info-item argument is a character
value.
Directories that are opened with the DOPEN
function are identified by a directory-id and
have a number of associated information items. Use DOPTNAME to determine the
names of the available system-dependent directory information items. Use DOPTNUM
to determine the number of directory information items available.
The DINFO, DOPTNAME, and DOPTNUM functions support the following directory
information items under z/OS.
Directory Information Items for UNIX File System (UFS) Directories
Item |
Item Identifier |
Definition |
1 |
Filename |
Directory name |
2 |
Access Permission |
Read, write, and execute permissions for owner, group,
and other |
3 |
Number of Links |
Number of links in the directory |
4 |
Owner Name |
User ID of the owner |
5 |
Group Name |
Name of the owner's access group |
6 |
Filesize |
File size |
7 |
Last Modified |
Date contents last modified |
Directory Information Items for PDSs
Item |
Item Identifier |
Definition |
1 |
Dsname |
PDS name |
2 |
Unit |
Disk type |
3 |
Volume |
Volume on which data set resides |
4 |
Disp |
Disposition |
5 |
Blksize |
Block size |
6 |
Lrecl |
Record length |
7 |
Recfm |
Record format |
Directory Information Items for PDSEs
Item |
Item Identifier |
Definition |
1 |
Dsname |
PDSE name |
2 |
Dsntype |
Directory type |
3 |
Unit |
Disk type |
4 |
Volume |
Volume on which data set resides |
5 |
Disp |
Disposition |
6 |
Blksize |
Block size |
7 |
Lrecl |
Record length |
8 |
Recfm |
Record format |
This example generates output that includes
information item names and values for a UFS directory:
data _null_;
length opt $100 optval $100;
/* Allocate directory */
rc=FILENAME('mydir', '/u/userid');
/* Open directory */
dirid=DOPEN('mydir');
/* Get number of information items */
infocnt=DOPTNUM(dirid);
/* Retrieve information items and */
/* print to log */
put @1 'Information for a UNIX
File System Directory:';
do j=1 to infocnt;
opt=DOPTNAME(dirid,j);
optval=DINFO(dirid,upcase(opt));
put @1 opt @20 optval;
end;
/* Close the directory */
rc=DCLOSE(dirid);
/* Deallocate the directory */
rc=FILENAME('mydir');
run;
UFS Directory Information
Information for a UNIX System
Services Directory:
Directory Name /u/userid
Access Permission drwxr-xr-x
Number of Links 17
Owner Name MYUSER
Group Name GRP
Last Modified Apr 26 07:18
Created Jan 9 2007
NOTE: The DATA statement used 0.09
CPU seconds and 5203K.
This example
generates directory information for a PDSE:
data _null_;
length opt $100 optval $100;
/* Allocate directory */
rc=FILENAME('mydir', 'userid.pdse.src');
/* Open directory */
dirid=DOPEN('mydir');
/* Get number of information items */
infocnt=DOPTNUM(dirid);
/* Retrieve information items and */
/* print to log */
put @1 'Information for a PDSE:';
do j=1 to infocnt;
opt=DOPTNAME(dirid,j);
optval=DINFO(dirid,upcase(opt));
put @1 opt @20 optval;
end;
/* Close the directory */
rc=DCLOSE(dirid);
/* Deallocate the directory */
rc=FILENAME('mydir');
run;
PDSE Directory Information
Information for a PDSE:
Dsname USERID.PDSE.SRC
Dsntype PDSE
Unit 3380
Volume ABC002
Disp SHR
Blksize 260
Lrecl 254
Recfm VB
Creation 2005/10/03
NOTE: The DATA statement used 0.08
CPU seconds and 5203K.
This
example generates information item names and values for
a PDS:
data _null_;
length opt $100 optval $100;
/* Allocate directory */
rc=FILENAME('mydir', 'userid.mail.text');
/* Open directory */
dirid=DOPEN('mydir');
/* Get number of information items */
infocnt=DOPTNUM(dirid);
/* Retrieve information items and */
/* print to log */
put @1 'Information for a PDS:';
do j=1 to infocnt;
opt=DOPTNAME(dirid,j);
optval=DINFO(dirid,upcase(opt));
put @1 opt @20 optval;
end;
/* Close the directory */
rc=DCLOSE(dirid);
/* Deallocate the directory */
rc=FILENAME('mydir');
run;
PDS Directory Information
Information for a PDS:
Dsname USERID.MAIL.TEXT
Unit 3380
Volume ABC005
Disp SHR
Blksize 6160
Lrecl 80
Recfm FB
Creation 2005/10/03
NOTE: The DATA statement used 0.07
CPU seconds and 5211K.
Copyright © 2009 by SAS Institute Inc., Cary, NC, USA. All rights reserved.