In general parameter's values are read from the parameter file. They can however be overridden if the command line arguments are entered. Let's assume that we have written simple application named ISDCCopy to copy a file. It accepts 2 parameters, namely InFile and OutFile. The corresponding parameter file could be :
InFile,s,ql,sample1.fits,,,"Enter input file name" OutFile,s,ql,/dev/null,,,"Enter output file name"
If we run that application without any arguments
ISDCCopy
it will prompt us for these two parameters. Pressing 2 times RETURN key will accept default values and in this case application will attempt to copy sample1.fits file onto /dev/null device (not a very useful function). If we type :
ISDCCopy sample34.fits
or
ISDCCopy InFile="sample34.fits"
it will ask only for 2nd second parameter. The value of first parameter will be set to sample34.fits. If we type:
ISDCCopy sample45.fits mycopy.fits
or
ISDCCopy InFile="sample45.fits" OutFile="mycopy.fits"
or
ISDCCopy OutFile="mycopy.fits" InFile="sample45.fits"
it will not ask for any parameters. If we type :
ISDCCopy OutFile="mycopy.fits"
it will ask only for the first parameter.