What this snippet appears to be doing is to construct a random filename, and do so until it finds a filename that does not exist. And the name is of the form <TMPDIR>/runitout_NNNNN
The "until" reads as "until we have a file that does not exist", i.e., until a "free" filename.
For more information on the -f and others, see
-X
Also note that a more robust general approach would be to use the
File::Temp module.