Так что я совсем не разбираюсь в написании сценариев, поэтому просто пытаюсь понять это по ходу дела, и я немного застрял. Таким образом, с помощью следующего скрипта я пытаюсь в основном искать набор папок, и в каждой папке есть два файла. Они остаются в паре друг с другом (для вызова внешнего приложения, чтобы запустить их вместе). Поэтому я перевожу их, затем пытаюсь вызвать внешнее приложение и тому подобное. Я также должен был удалить два файла после запуска другого приложения ... Проблема в том, что после 2-го перемещения файла я не могу поместить еще какой-либо код, мудрый после него для его выполнения. Например, есть два тестовых файла, с которыми я пытался это сделать. Если я добавляю команду для запуска внешнего приложения ПОСЛЕ того, как выполняется перемещение, это то, что я пытаюсь сделать ... он перемещает файлы, но в основном перемещает первый файл дважды и использует его как оба файла, если это имеет смысл , Итак, есть файл A и файл b. Я получаю два файла A, только один из них называется файл b. Если я прокомментирую какой-либо код после перемещения, он отлично работает.
@ECHO ON
SET Loc1Dir=C:\Users\*****\Desktop\temp
SET Loc2Dir=S:\shared\*****\*****\Input\Run\Working_Folder
CD /D "%Loc1Dir%"
FOR /R %%F IN ("*.STMT*") DO CALL :CopyFile %%~F
FOR /R %%I IN ("*.CARD*") DO CALL :CopyFile2 %%~I
:CopyFile
SET copyfname=%~1
SET fname=driver
ECHO F | XCOPY /Y /F "%copyfname%" "%Loc2Dir%\%fname%"
:::CALL :CopyFile2
:::GOTO :EOF
:CopyFile2
SET copyfname2=%~1
SET fname2=card
ECHO F | XCOPY /Y /F "%copyfname2%" "%Loc2Dir%\%fname2%"
Я знаю, что некоторые закомментированы, но это просто от того, что что-то движется и пытается заставить его работать правильно. По существу, после того, как 2 шага будут выполнены, я вызову внешнее приложение, затем оно запустится, а затем вернется, и я заставлю этот скрипт удалить файлы, а затем перейти к следующей папке / набору файлов.