to do the traversing for you -- it will do exactly what you want (recursively find *.sas files and do something to them).
As to modifying your code, you would need to toss what you have into a function, and then call itself (recursion) on any subdirs found.. This is all the work that File::Find will do automagically for you.