Windows 如何批量移动以特定字符串开头的文件夹

Windows 如何批量移动以特定字符串开头的文件夹,windows,batch-file,cmd,directory,move,Windows,Batch File,Cmd,Directory,Move,我不是很多脚本,所以我认为这是完全初学者的东西,所以 我有以下问题,我想移动(像剪切和粘贴)一个文件夹,总是以相同的字符串开始,但从来没有相同的结束,到另一个文件夹 我在运行批处理的Windows服务器上工作。批处理正在将不同的备份文件复制到带有时间戳的目录中。这很好,因为我需要移动的所有其他文件和目录都有静态名称 但是我遇到了一个文件夹/目录的问题,它有一个动态名称。文件夹总是以应用程序的GUID{xxxxxxxx-xxxx-xxxx-xxxx-XXXXXXXXXXXXXX}开始,因此目录名的

我不是很多脚本,所以我认为这是完全初学者的东西,所以 我有以下问题,我想移动(像剪切和粘贴)一个文件夹,总是以相同的字符串开始,但从来没有相同的结束,到另一个文件夹

我在运行批处理的Windows服务器上工作。批处理正在将不同的备份文件复制到带有时间戳的目录中。这很好,因为我需要移动的所有其他文件和目录都有静态名称

但是我遇到了一个文件夹/目录的问题,它有一个动态名称。文件夹总是以应用程序的GUID{xxxxxxxx-xxxx-xxxx-xxxx-XXXXXXXXXXXXXX}开始,因此目录名的开始是静态的。但在最后,应用程序添加了一个下划线\uu,后跟随机字符,因此目录看起来像下面的f.E.: {11111111-1111-1111-1111-11111111}

到目前为止,我的其他静态文件都是这样处理的:

if exist %path%\%fullstamp% move %path%\Test %path%\%fullstamp%
path包含包含需要移动的文件的目录的路径。 fullstamp包含一个时间戳,用于在批处理开始时创建新目录

我试过这样的方法:

move %path%\Test* %path%\%fullstamp%
move %path%\Test*. %path%\%fullstamp%
move %path%\Test*\ %path%\%fullstamp%
但这些都没有成功

就像我说的,可能没什么大不了的,但我还是需要问一下

总结一下:

始终使用相同字符串启动/包含的目录需要移动到另一个目录。 一些导演的名字是f.E

Test_31tß0t30 
Test_3tggwqgrgwrg 
Test_ksmrh82ra
提前感谢您,并对我的英语不好表示歉意。

似乎不接受源目录,因此您需要先解析路径:

对于“%ROOT%\Test*”中的/D%%I,请移动“%%~I”“%ROOT%\%fullstamp%”
我还引用了源路径和目标路径,以避免出现空格或其他特殊字符的问题

您使用变量
%path%
这一事实使我认为您将其设置为操作的根路径,但它是系统用于查找可执行文件的保留变量,因此不应(过度)写入它。这就是为什么我在代码建议中使用了另一个变量名
ROOT