难以在复制命令.bat文件中引用变量



我正试图写一个小脚本来复制一些文件在我的工作。每个月的目标文件夹都会改变,所以使用变量会让我的工作更轻松。只要我在复制命令的目的地部分引用一个变量,它就会告诉我没有找到目的地。不是专业人士,但任何建议都会有所帮助。谢谢。

下面是我的代码:
1* SET MONTH=8. August 2021
2* SET YEAR=2021 
3* SET ACGROV="4. Grove Cashup August 2021.xlsx"
4* SET ACMENL="7. Menlyn Cashup August 2021.xlsx"
5* SET ACILAN="6. ILANGA CASHUP August 2021.xlsx"
6* SET MENL="8. Menlyn Cashup August 2021.xlsx"
7* SET GROV="8. Grove Cashup August 2021.xlsx"
8* SET ILAN="8. Cash-up Ilanga - August 2021.xlsx"
9* SET COPYTO=C:/Users/dranr/Dropbox/ACCOUNTS/Cash Ups/%YEAR%/%MONTH%
10* cd C:/Users/dranr/Dropbox/ACCOUNTS/Cash Ups/%YEAR%/%MONTH%/
11* Del %ACGROV%
12* Del %ACMENL%
13* Del %ACILAN%
14* cd C:/Users/dranr/Dropbox/The Fun Company Cash Up Summaries/Cash Up/Ilanga/%YEAR%/
15* copy %ILAN% "%COPYTO%"
16* cd C:/Users/dranr/Dropbox/The Fun Company Cash Up Summaries/Cash Up/Grove/%YEAR%/
17* copy %GROV% "%COPYTO%"
18* cd C:/Users/dranr/Dropbox/The Fun Company Cash Up Summaries/Cash Up/menlyn/%YEAR%/
19* copy %MENL% "%COPYTO%"
20* cd C:/Users/dranr/Dropbox/ACCOUNTS/Cash Ups/%YEAR%/%MONTH%/
21* ren %ILAN% %ACILAN%
22* ren %MENL% %ACMENL%
23* ren %GROV% %ACGROV%
24* timeout /t -1

Yeap https://stackoverflow.com/users/2152082/stephan是正确的,您应该使用该语法,因为例如:

SET ACGROV="4. Grove Cashup August 2021.xlsx"

echo %ACGROV%

你将得到变量的内容,它将是:

"4。Grove Cashup 2021年8月xlsx"

这样做,并去掉数字1*…24*和其他所有内容看起来都很正确尽管我建议你使用带有"当文件夹名称中有空格时:

cd "C:/Users/dranr/Dropbox/The Fun Company Cash Up Summaries/Cash Up/menlyn/%YEAR%/"

最新更新