That error message is coming from cmd.exe, the windows command
interpreter. When your executable is a batch file, what HTCondor must to to run it is to invoke cmd.exe and pass your batch file and arguments to it. It does it like this. "C:\WINDOWS\system32\cmd.exe" /Q /C "tw.bat" c:\data\program.pl -i c:\data\dataset.dat --point="2014-01-01 01:00:00" (actually tw.bat will have been renamed as part of file transfer, but that has no effect on the result) try running this command yourself and you will see that the result is "The filename, directory name, or volume label syntax is incorrect" The help for cmd.exe tells why (emphasis mine): If /C or /K is specified, then the remainder of the command line after Adding /S before /Q to the arguments doesn't not change the result. You could use a small .exe program instead of a .bat to invoke perl - or rely on file associations to treat .pl as an executable without the need to invoke perl explicitly. or move your quoted arguments into the job as attributes and use a more complicated .bat file to assemble the command line that is passed to the perl program. I think this last solution is your best bet. For instance. If your submit file has Arguments = c:\data\program.pl -i c:\data\largedataset.dattw.bat can get the value of Point by using condor_q against the copy of the job classad that is stored in the execute directory while the job is running. for /F "tokens=*" %%I in ('condor_q -jobad .job.ad -autoformat Point') do set POINT=%%I -tj On 8/27/2015 8:48 PM, Rita wrote:
|