mirror of
https://github.com/sasjs/core.git
synced 2025-12-25 20:20:05 +00:00
feat: mf_isdir macro
This commit is contained in:
32
all.sas
32
all.sas
@@ -1152,6 +1152,38 @@ Usage:
|
|||||||
|
|
||||||
%sysevalf(%superq(param)=,boolean)
|
%sysevalf(%superq(param)=,boolean)
|
||||||
|
|
||||||
|
%mend;/**
|
||||||
|
@file
|
||||||
|
@brief Checks whether a path is a valid directory
|
||||||
|
@details
|
||||||
|
Usage:
|
||||||
|
|
||||||
|
%let isdir=%mf_isdir(/tmp);
|
||||||
|
|
||||||
|
With thanks and full credit to Andrea Defronzo - https://www.linkedin.com/in/andrea-defronzo-b1a47460/
|
||||||
|
|
||||||
|
@param path full path of the file/directory to be checked
|
||||||
|
|
||||||
|
@return output returns 1 if path is a directory, 0 if it is not
|
||||||
|
|
||||||
|
@version 9.2
|
||||||
|
**/
|
||||||
|
|
||||||
|
%macro mf_isdir(path
|
||||||
|
)/*/STORE SOURCE*/;
|
||||||
|
%local rc did is_directory fref_t;
|
||||||
|
|
||||||
|
%let is_directory = 0;
|
||||||
|
%let rc = %sysfunc(filename(fref_t, %superq(path)));
|
||||||
|
%let did = %sysfunc(dopen(&fref_t.));
|
||||||
|
%if &did. ^= 0 %then %do;
|
||||||
|
%let is_directory = 1;
|
||||||
|
%let rc = %sysfunc(dclose(&did.));
|
||||||
|
%end;
|
||||||
|
%let rc = %sysfunc(filename(fref_t));
|
||||||
|
|
||||||
|
&is_directory
|
||||||
|
|
||||||
%mend;/**
|
%mend;/**
|
||||||
@file
|
@file
|
||||||
@brief Returns physical location of various SAS items
|
@brief Returns physical location of various SAS items
|
||||||
|
|||||||
33
base/mf_isdir.sas
Normal file
33
base/mf_isdir.sas
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
/**
|
||||||
|
@file
|
||||||
|
@brief Checks whether a path is a valid directory
|
||||||
|
@details
|
||||||
|
Usage:
|
||||||
|
|
||||||
|
%let isdir=%mf_isdir(/tmp);
|
||||||
|
|
||||||
|
With thanks and full credit to Andrea Defronzo - https://www.linkedin.com/in/andrea-defronzo-b1a47460/
|
||||||
|
|
||||||
|
@param path full path of the file/directory to be checked
|
||||||
|
|
||||||
|
@return output returns 1 if path is a directory, 0 if it is not
|
||||||
|
|
||||||
|
@version 9.2
|
||||||
|
**/
|
||||||
|
|
||||||
|
%macro mf_isdir(path
|
||||||
|
)/*/STORE SOURCE*/;
|
||||||
|
%local rc did is_directory fref_t;
|
||||||
|
|
||||||
|
%let is_directory = 0;
|
||||||
|
%let rc = %sysfunc(filename(fref_t, %superq(path)));
|
||||||
|
%let did = %sysfunc(dopen(&fref_t.));
|
||||||
|
%if &did. ^= 0 %then %do;
|
||||||
|
%let is_directory = 1;
|
||||||
|
%let rc = %sysfunc(dclose(&did.));
|
||||||
|
%end;
|
||||||
|
%let rc = %sysfunc(filename(fref_t));
|
||||||
|
|
||||||
|
&is_directory
|
||||||
|
|
||||||
|
%mend;
|
||||||
Reference in New Issue
Block a user