我有一个相当简单的问题,但我似乎无法在任何地方找到解决方案。
我正在处理批处理文件中的一些变量,我想根据变量更改目录。
例如
variable SET /Jan2000 = a
cd P:\Reference\Data\2000\%a%
当我运行批处理文件时,它只停留在“2000”文件夹中,它不会像我要求的那样进入下面的文件夹。有没有办法让这个工作?
编辑:根据请求,这是在批处理文件中编写的确切代码。谢谢你的帮助。
chdir /D P:\Reference\Data\2000
SET Jan2000 = a
chdir P:\Reference\2000\%a%
dir
pause
答案 0 :(得分:5)
我不能在@ aphoria的答案中添加太多内容,但试试这个
set a=jan2000
pushd P:\Reference\Data\2000\%a%
使用pushd
代替cd
可能会导致更改驱动器上的目录时出现问题。 (我知道,/d
开关适用于此,但值得一试。
答案 1 :(得分:4)
您需要SET
您的变量。
例如:
SET a=Jan2000
CD P:\Reference\Data\2000\%a%
答案 2 :(得分:0)
是的,我同意。我需要保持一周的每周备份,所以我通过从系统日期中提取3个字母的工作日来创建一个星期几的文件夹:
set Today=%DATE:~0,3%
Echo The day of the week is %Today%
If exist U:\%Today% rd U:\%Today% /s /q
md U:\%Today%
随后是各种Robocopy命令写入U:\%Today%文件夹