我有一个 GIT 备份脚本,当从命令行执行时可以完美运行(它是我们主要 GIT 代表的每日备份):
@echo off
rem -- Set Parameters
rem -- daliy GIT backup
REM Get DATE
set mm=%Date:~4,2%
set dd=%Date:~7,2%
set yy=%Date:~10,4%
set TODAY=%yy%%mm%%dd%
for /f %%a in ('date /t') do set DAY=%%a
if %DAY%==Sun goto :weekend
if %DAY%==Sat goto :weekend
goto :weekday
:weekend
:: No backup after weekends
echo %day%
exit
:weekday
:: Backup during weekdays
REM Connect to share
REM net use z: \\backupnas\backup\
Z:
cd \
cd git
REM Start backup of current GITS
cd OptiTexRepo.git
call git fetch
cd ..
RAR.exe a -rr10 -s ARCHIVES\%TODAY%.OptiTexRep.git.rar OptiTexRepo.git
cd OptiTexRepo_V11.1.git
call git fetch
cd ..
RAR.exe a -rr10 -s ARCHIVES\%TODAY%.OptiTexRepo_V11.1.git.rar OptiTexRepo_V11.1.git
REM exit
但是,当我每天从 W2008R2 服务器将其作为计划任务运行时,它立即存在(非常类似于问题https://serverfault.com/questions/343496/powershell-script-works-from-command- line-not-from-task-scheduler-why)这给了我一个想法,检查天气 GIT FETCH 是否与 UNC 一起正常工作 - 显然可以,但是在任务中运行时 - 出了点问题 - 我不知道是什么.
根据问题:git on UNC path git 应该可以工作,但我不明白脚本命令需要什么才能使其实际工作。
目前我将我的备份驱动器映射到 Z:,当我 CD 到文件夹时,我只是 GIT FETCH(从主服务器所在的配置文件中读取)
如何使用 UNC 做到这一点?这也适用于任务调度程序?
还是问题实际上在其他地方?