I know that the file $file does not exist, I open it to insure that user is typing the file exists. The question should have been how do I tell the shell line that $file = <STDIN> is the value that is entered by the user and to put it into the shell line ie
User enters test.txt
So $file is now = test.txt
the shell command shout be
perl /Users/james/perlstuff/macc/macc1 test.txt.
James