How to create folders using SAS?

To create folders in SAS, there are a variety of system options, functions, and commands that you can use.  This article will demonstrate some of the options and functions you can use to create a folder using SAS. These functions can be automated to perform repetitive routine tasks and which avoid manual work and save a great deal of time.

DLCREATEDIR System option

DLCREATEDIR is a system option and when used with the libname statement can create folders.

options dlcreatedir;
libname newdir "/home/9to5sas/my_content/new";

Once you run the above statement, check the SAS log to see if the library assignment was successful or not.

SAS Log:

NOTE: Library NEWDIR was created.NOTE: Libref NEWDIR was successfully assigned as follows: Engine: V9 Physical Name: /home/9to5sas/my_content/new

To create subfolders, you can use multiple specifications in the LIBNAME statement.

options dlcreatedir;
libname newdir ("/home/9to5sas","/home/9to5sas/statistics");

Important! Make sure to turn off the DLCREATEDIR option after creating directories.

The <span style="font-family: 'Courier Prime';">NODLCREATEDIR</span> specifies not to create a directory for a SAS library that is named in a LIBNAME statement.


DCREATE is a function that lets you create directories in your operating environment.


NewDirectory=DCREATE('Directory-name', 'parent-directory');
  • Directory-name – It is the name of the directory to create. Do not include the path name here.
  • Parent-directory – It is the complete pathname of the directory in which to create the new directory.

To create a new directory in the UNIX operating environment, with the directory name of ‘test’, follow this syntax:

NewDirectory=dcreate('test', '/home/test/abc/');

To create a new directory in the Windows operating environment, with the directory name of ‘test’, follow this syntax.

NewDirectory=dcreate('test', 'c:testdir');

X md (an X Statement)

With the help of X statements, you can give UNIX operating system commands directly from SAS.

md is a command in the Unix Operating system to make directories.

data _null_;
x 'md /home/9to5sas/test';

Deleting a Directory

This example uses FDELETE to delete an empty directory to which you have write access. If the directory is not empty, the optional SYSMSG function returns an error message stating that SAS is unable to delete the file.

filename testdir 'physical-filename';
data _null_;rc=fdelete('testdir');
put rc=;
put msg=;

We hope this article helped you to create directories in SAS. Do you have any tips to add Let us know in the comments?

Please subscribe to our mailing list for weekly updates. You can also find us on Instagram and Facebook.

Every week we'll send you SAS tips and in-depth tutorials


Subhro Kar is an Analyst with over five years of experience. As a programmer specializing in SAS (Statistical Analysis System), Subhro also offers tutorials and guides on how to approach the coding language. His website, 9to5sas, offers students and new programmers useful easy-to-grasp resources to help them understand the fundamentals of SAS. Through this website, he shares his passion for programming while giving back to up-and-coming programmers in the field. Subhro’s mission is to offer quality tips, tricks, and lessons that give SAS beginners the skills they need to succeed.