BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
DmytroYermak
Lapis Lazuli | Level 10

Hi,

 

Could you please say how sas program can find the path to itself?

 

I mean the way on a disk where it is kept.

 

Thank you!

1 ACCEPTED SOLUTION

Accepted Solutions
4 REPLIES 4
Kurt_Bremser
Super User

Depending on your environment (batch or workspace server), look at option sysin (you can get it in SQL from DICTIONARY.OPTIONS), &SYSPROCESSNAME, &_SASPROGRAMFILE

DR_Majeti
Quartz | Level 8
Please try below code , it gets the path name.


%macro grabpathname;
%sysget(SAS_EXECFILEPATH)
%mend grabpathname;
%put %grabpathname;
Kurt_Bremser
Super User

See this log from Enterprise Guide:

27         %macro grabpathname;
28         %sysget(SAS_EXECFILEPATH)
29         %mend grabpathname;
30         %put %grabpathname;
WARNING: The argument to macro function %SYSGET is not defined as a system variable.

and this log from a program run with

sas test.sas

on SAS 9.4M5 on AIX:

1          %macro grabpathname;
2          %sysget(SAS_EXECFILEPATH)
3          %mend grabpathname;
4          %put %grabpathname;
WARNING: The argument to macro function %SYSGET is not defined as a system variable.

So you see this is not reliable.

DmytroYermak
Lapis Lazuli | Level 10

Actually I have used the code (some points are project-specific):

 

%global pathtofile pathdir;
%let pathtofile = %qsubstr(%sysget(SAS_EXECFILEPATH), 1, %length(%sysget(SAS_EXECFILEPATH))-%length(%sysget(SAS_EXECFILEname)));
%let code=\code\;
%let pathdir =%qsubstr(&pathtofile,1,%index(&pathtofile,&code));
%put &pathdir;

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 1764 views
  • 0 likes
  • 3 in conversation