how can I extract the names of scripts in a folder then execute them?I am trying to extract the names of files in a subfolder and then extract them,
So far I am using the
Files in directory()
And getting a list and adding to a data table, but I am struggling to get from here to an executable jsl file that will run them all.
Any assistance would be great
thanks
Advanced Statistical ModelingAutomation and ScriptingContent OrganizationMass CustomizationRe: how can I extract the names of scripts in a folder then execute them?My guess is the For Each loop structure is failing in JMP 14. I think that was added in JMP 15. You can replace that with a traditional For () loop for JMP 14.
Re: how can I extract the names of scripts in a folder then execute them?Thanks for that, worked great. What are the changes that would cause it to fail in JMP 14 but not 16.
Re: how can I extract the names of scripts in a folder then execute them?lstFiles = Files in Directory ("$SAMPLE_DATA\Loss Function Templates");
for each ({i}, lstFiles,
//if extension is .jsl, then it's a script, and should be executed
if (right(i,3)=="jsl", include("$SAMPLE_DATA\Loss Function Templates\"||i));
);
//put values in a new data table
dt = new table ("table",
new column ("Fname", character, set values (lstFiles))
);
This should be what you're looking for. The bit about putting the list in a table doesn't do anything, other than put them in the table, so unless you actually need the filenames in a table, this can be skipped.
Re: how can I extract the names of scripts in a folder then execute them?When getting files in directory it wasn't including the full path, so I was adding the list to data table and adding the rest of the path and semi colons to get the syntax correct.
I was hoping to include the names as a script with a load of include and file names. And have the file in task scheduler and running every day etc
Re: how can I extract the names of scripts in a folder then execute them?I don't understand this part: "And getting a list and adding to a data table"
Depending where you are executing the scripts from you can use Include() (files) or << Run Script (table scripts)