Batch file 7zip当前日期与其他路径目录上的源文件夹

Batch file 7zip当前日期与其他路径目录上的源文件夹,batch-file,7zip,Batch File,7zip,我试图压缩文件,只有最新的文件修改使用7z,我看了一下这个 还有这个 但它们不在不同的目录中,我有麻烦,目前我的命令代码是这样的 @ECHO ON SET SourceDir=H:\spiral\kmart\inbox SET DestDir= C:\TCD CD \TCD 7z.exe a -tzip C:\TCD\KMartInboxXML.zip-i!^C:\TCD\%DATE:~4,2%-%DATE:~7,2%-%DATE:~10,4%.xml "H:\spiral\kmart

我试图压缩文件,只有最新的文件修改使用7z,我看了一下这个

还有这个

但它们不在不同的目录中,我有麻烦,目前我的命令代码是这样的

@ECHO ON

SET SourceDir=H:\spiral\kmart\inbox
SET DestDir= C:\TCD


CD \TCD
7z.exe a -tzip C:\TCD\KMartInboxXML.zip-i!^C:\TCD\%DATE:~4,2%-%DATE:~7,2%-%DATE:~10,4%.xml "H:\spiral\kmart\inbox\*"


SET DestDir= C:\TCD
pause

EXIT 
我得到了这个错误(见pict)

我知道我使用了错误的dir,因为错误的命令,实际上我也尝试了使用forfiles的不同命令行,我迷路了。非常感谢您的帮助

编辑:


缺少解释。

从我的朋友那里得到帮助,通过更改源文件夹上的zip命令来解决。 因为文件使用的是日期, 我使用变量来查找它们。。。格式名称文件为290427-shipping-170418083.xml

所以我将变量描述为

SET now=%date:~12,2%%date:~7,2%%date:~4,2%
将导致:

170418
因此,任何文件名为170418(即今天)的文件都将被压缩,将它们放在zip源文件夹中的变量中

这是完整的代码

@ECHO ON


SET SourceDir=H:\spiral\kmart\inbox
SET DestDir= C:\TCD
SET now=%date:~12,2%%date:~7,2%%date:~4,2%


C:
CD \TCD
7z.exe a files_kmartinbox.zip -r "H:\spiral\kmart\inbox\*%now%*" 


SET DestDir= C:\TCD

我希望这能帮助有同样问题的人。干杯。

得到我朋友的帮助,通过更改源文件夹上的zip命令来解决这个问题。 因为文件使用的是日期, 我使用变量来查找它们。。。格式名称文件为290427-shipping-170418083.xml

所以我将变量描述为

SET now=%date:~12,2%%date:~7,2%%date:~4,2%
将导致:

170418
因此,任何文件名为170418(即今天)的文件都将被压缩,将它们放在zip源文件夹中的变量中

这是完整的代码

@ECHO ON


SET SourceDir=H:\spiral\kmart\inbox
SET DestDir= C:\TCD
SET now=%date:~12,2%%date:~7,2%%date:~4,2%


C:
CD \TCD
7z.exe a files_kmartinbox.zip -r "H:\spiral\kmart\inbox\*%now%*" 


SET DestDir= C:\TCD

我希望这能帮助有同样问题的人。干杯。

现在您已经找到了7z.exe命令的修复程序,请将脚本的其余部分更改为:

@ECHO关闭
设置“SourceDir=H:\spiral\kmart\inbox”
设置“ZipName=files\u kmartinbox.zip”
设置“DestDir=C:\TCD”
设置“现在=%date:~12,2%%日期:~7,2%%日期:~4,2%”
CD/D“%DestDir%”
7z.exe a“%ZipName%”-r“%SourceDir%\*%now%*”

另请注意,如果7z.exe不在%PATH%或%DestDir%中,则还必须提供它的完整路径或相对路径。

现在您已经找到了7z.exe命令的修复程序,请将脚本的其余部分更改为:

@ECHO关闭
设置“SourceDir=H:\spiral\kmart\inbox”
设置“ZipName=files\u kmartinbox.zip”
设置“DestDir=C:\TCD”
设置“现在=%date:~12,2%%日期:~7,2%%日期:~4,2%”
CD/D“%DestDir%”
7z.exe a“%ZipName%”-r“%SourceDir%\*%now%*”

另外请注意,如果7z.exe不在%PATH%或%DestDir%中,您也必须提供它的完整路径或相对路径。

这似乎不是批处理文件问题,尽管我会更改您发布的每一行代码。但更多的是我如何使用7z命令行。您试图使用
-i
开关做什么?为什么不在它前面加一个空格?@Compo嗨,谢谢你的回复,很抱歉我完全没有批处理文件。。我试图像在链接xD上一样遵循命令行。尽管我会更改您发布的每一行代码,但这似乎不是批处理文件问题。但更多的是我如何使用7z命令行。您试图使用
-i
开关做什么?为什么不在它前面加一个空格?@Compo嗨,谢谢你的回复,很抱歉我完全没有批处理文件。。我试图像在链接xD上一样遵循命令行。不过我自己已经弄明白了。