2016-03-31 2 views
0

Я пытаюсь скопировать файл system.exe в папку с помощью xcopy в .bat-файле. Вот код. Файл system.exe находится в том же каталоге, что и файл .bat.xcopy Файл не найден

md "C:\Users\Public\sys\" 
set copy="%~dp0system.exe" 
set target="C:\Users\Public\sys\" 
xcopy /c copy target /i /r /f 

Я также пробовал это.

xcopy /c "copy" "target" /i /r /f 

И это.

xcopy /c "%~dp0system.exe" "C:\Users\Public\sys\" /i /r /f 

Все дали тот же ответ

File not found 

Первые две попытки дает

File not found - copy 

Если вышеуказанные линии успеха, следующие строки в .bat создаст ярлык для копию system.exe в папке автозагрузки.

set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs" 
echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT% 
echo sLinkFile = "%programdata%\Microsoft\Windows\Start Menu\Programs\Startup\startup.lnk" >> %SCRIPT% 
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT% 
echo oLink.TargetPath = "C:\Users\Public\sys\system.exe" >> %SCRIPT% 
echo oLink.Save >> %SCRIPT% 
cscript /nologo %SCRIPT% 
del %SCRIPT% 

Вот чего я надеялся достичь. Любая помощь оценивается.

добавить:

Я побежал .bat как администратор

+3

Попробуйте следующее: 'xcopy/c/i/r/f"% copy% ""% target% "'; вам нужно заключить переменную с '%' sogns для ее расширения (чтения); Я рекомендую не использовать 'copy' в качестве имени переменной, так как есть такая команда ... – aschipfl

+0

Это сработало, спасибо большое –

ответ

0

Вы должны использовать эту %copy% и %target%

EDIT: @aschipfl получил его первым. Извините, что не посмотрел на ваш комментарий.

+0

Думаю, вам следует дать кредит @aschipfl, если вы ответите тем, что он сказал в комментариях больше, чем за час до вас –

+0

@DennisvanGils Мне очень жаль, я спешил и даже не взглянул на комментарии. Сейчас отредактирует. Снова Извините. –

Смежные вопросы