发送到 C:\\开发批次

发送到 C:\\开发批次

如果可能的话,使用 Windows 10,我希望能够使用“发送到”上下文菜单从本地主机发送到我的 git 开发路径。

(Win + R,shell:sendto)

我有两个目录,假设它们是:

C:\wamp\www\项目名称
C:\Users\myname\项目名称

现在假设我已经更新了本地主机目录中的文件,例如

C:\wamp\www\项目名称\application\libraries\js\jsfile.js

我希望能够右键单击该文件 > 发送到

开发根路径:(C:\Users\myname\projectname)附加文件路径(\application\libraries\js\jsfile.js)

因此本质上它是将文件发送到同一个文件夹,只是在不同的目录中。

我可以使用以下方法获取一些路径:

for /f %%q in ("%~dp0.") do echo C:\Users\myname\projectname\%%~nxq

我需要获取 \projectname\ 之后的所有文件夹,这些文件夹可能是 1 个或 10 个不同的文件夹。

我意识到这个问题有很多要问的,但我认为这对很多人来说都是有用的。

答案1

这是否符合预期:

在此处输入图片描述

我的项目.bat:

@echo off

set Destiny=%userprofile%\projectname
set PartToIgnore=\wamp\www\projectname\application\

IF /i not exist "%Destiny%" md "%Destiny%"

for %%a in (%*) do call :MoveFiles "%%~a"
exit

:MoveFiles
set SourceFile=
set RelativeSource=
set "SourceFile=%~pnx1"
call set "RelativeSource=%%SourceFile:%PartToIgnore%=%%"
echo F | xcopy /i /h /y "%~1" "%Destiny%\%RelativeSource%"
goto :EOF

相关内容