sddsxref functions differently in one specific script
Posted: 23 Jun 2021, 17:22
This is a bit of a long shot, but I don't have any better ideas on where to ask for help on this problem. I'm trying to get the length of the beamline into the track.lost file from track.twi. To do this, I use two commands:
When I run these two commands sequentially at the command line, it works as I expect and adds the length parameter to track.lost. But, when I put these two lines into a bash script, the sddsxref throws a bunch of warnings that look like the following
and then, when I run "sddsquery track.lost" I see that sddsxref has tried to populate track.lost with the column data from track.twi, but that shouldn't be happening (according to the help file on sddsxref) because I used "-leave=*", and it certainly doesn't happen when I run the commands at the command prompt. [Edit: The two commands run as expected if I copy them into another script and run that.] Because of all this, I think I'm tripping on some keyword in some other piece of my script that is causing sddsxref to act differently.
I have attached the trackError script here, in the hopes that one of the sdds-wizards here can identify the mistake I'm making. Failing that, I can work around this problem if I knew a way to take that length parameter and put it into another sdds file that is otherwise empty. Does anyone have a trick for that?
Code: Select all
sddsprocess track.twi -noWarnings -process=s,last,length
sddsxref track.lost track.twi -leave=* -transfer=param,length
Code: Select all
warning: no row in file 2 for row 2353 in file 1
I have attached the trackError script here, in the hopes that one of the sdds-wizards here can identify the mistake I'm making. Failing that, I can work around this problem if I knew a way to take that length parameter and put it into another sdds file that is otherwise empty. Does anyone have a trick for that?