# Combining Unique Input and Output Files

You can instruct the Condor software to read an individual input file for each iteration of a process, and then to write an individual output file for each iteration. You can organize these input and output files by placing them within one directory, or you can place them within individual directories for each iteration. For example, to execute an R program (named RanVal.R) 15 times and use individual directories, input files, and output files for each execution: Create fifteen directories. Use a naming convention that includes the full range of process IDs for 15 executions, 0 - 14. For this example, name your directories dir_0 - dir_14. Create individual input files for each execution that you plan to perform. Use a naming convention that includes the full range of process IDs for 15 executions, 0 - 14. For this example, name your files in.0 - in.14. Place each input file in the associated directory. That is, place in.0 in the directory dir_0, place in.1 in the directory in.1, and so on. Your input files look like this: //dir_0/ in.0 //dir_1/ in.1 ... //dir_14/ in.14 Instruct the Condor system to write unique output files for each iteration of the program. For this example, use the output file name out.$(PROCESS). Instruct the Condor system to execute your program 15 times. The attributes in your submit file look like this: Executable = RanVal.R InitialDir = dir_$(PROCESS) input = in.$(PROCESS) output = out.$(PROCESS) Queue 15 The results of execution of your batch process are as follows: //dir_0/ in.0 out.0 //dir_1/ in.1 out.1 ... //dir_14/ in.14 out.14