我想复制一个set /p
的文件。任务:使用set / p编写文件名,并将其复制到我想要的目录中,但不起作用。
我目前的来源:
@echo off
echo Enter YOur Pic Name With .jpg
set /p cop=
xcopy /s %systemroot%\%cop% %systemroot%\system32\oobe\info\backgrounds
cls
pause
答案 0 :(得分:0)
对于SET /P
命令,格式最适合这样:
set /p cop=Enter your Pic name with .jpg
我还建议您添加几行来检查文件是否确实存在:
@rem just check that the full path is what I expect
echo %systemroot%\%cop%
@rem and check if the file is there
dir %systemroot%\%cop%
(批处理文件工作后删除这些行)。
此外,删除cls
行,直到它正常工作。然后,一旦它正在做你需要的东西,你可以把它放回去,如果你愿意的话。
您可能想要考虑%systemroot%
是否适合拍摄这些照片,即使是暂时的。它通常用于Windows操作系统代码。
答案 1 :(得分:0)
%systemroot%path可能有空格,因此文件名必须用引号括起来:
@echo off
set /p "cop=Enter YOur Pic Name With .jpg: "
xcopy /s "%systemroot%\%cop%" "%systemroot%\system32\oobe\info\backgrounds"
cls
pause
答案 2 :(得分:0)
您也可以尝试以下操作(xcopy不喜欢/s
),我认为您试图使输出静音,只需尝试使用>nul
重定向:
@echo off
echo Enter YOur Pic Name With .jpg
set /p cop=
xcopy /y %systemroot%\%cop% %systemroot%\system32\oobe\info\backgrounds\* >nul
cls
pause