Agreed. A File Layout Definition should be used; presumably, you know which fields are in the file and the File Layout will parse the data into the fields properly.
There is a problem in the very first line. Variables &FileDirAndName and &Archive_Dir will not be resolved if its inside the double quotes. You have to do something like this:
&cmd = "cp " | &FileDirAndName " " | &Archive_Dir;
Also, your IF stat...