which creates the child worker process (I assumed you have no control over this process) and# write.pl my $pid = fork; if($pid == 0) { sleep 5; system('echo "hello world" > foo.txt'); }
Then running copy.pl produced:# copy.pl my $test = system('perl', 'write.pl'); my $file1 = 'foo.txt'; my $status = system("cp $file1 file2");
Then I changed copy.pl to copy2.pl$ perl -w copy.pl cp: cannot stat `foo.txt': No such file or directory
which successfully copies the file. This method waits for the file to be created and waits until no other processes are using it before executing the copy command (and it assumes you have lsof available).# copy2.pl use strict; my $test = system('perl', 'write.pl'); my $file1 = 'foo.txt'; while(1) { last if -e $file1 && ! qx/lsof $file1/; } my $status = system("cp $file1 file2");
In reply to Re: ClearCase Programming
by Arunbear
in thread ClearCase Programming
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |