簡體   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