繁体   English   中英

Win7批处理命令不起作用

[英]Win7 Batch command not working

我在批处理(gitcopyfiles.bat)文件中有这个代码,它跟踪git的修改文件并将它们复制到指定的文件夹但它不起作用:

for /f "usebackq tokens=*" %A in (`git diff-tree -r --no-commit-id --name-only
--diff-filter=ACMRT HEAD~1 HEAD`) do echo FA|xcopy "%~fA" "C:\git_changed_files\%A"

但它不起作用, 但是当我直接从命令提示符运行上面的命令时,它确实运行良好。 所以它不仅仅在批处理文件中有效。

任何人都可以帮助可能出错吗? 我甚至尝试以管理员身份运行bat文件,但仍然没有运气

bat文件中出现的错误消息是:

~fA" "C:\git_changed_files\A" was unexpected at this time.

D:\wamp\www\myproject>for /f "usebackq tokens=*" ~fA" "C:\git_changed_files\A"
do echo FA|xcopy "%~fA" "C:\git_changed_files\%A"
  1. echo FA| 没有必要,删除它
  2. 如果未设置文件路径,则"%~fA"可能不起作用
  3. \\%A"没有必要,删除它
  4. for /f "usebackq tokens=*"for /f "usebackq delims="

给这个跑:

@echo off
for /f "delims=" %%A in ('git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT HEAD~1 HEAD') do xcopy "%%A" "C:\git_changed_files\"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM