Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 使用命令行压缩和删除所有源文件_Batch File_Zip_Command Line Arguments_7zip - Fatal编程技术网

Batch file 使用命令行压缩和删除所有源文件

Batch file 使用命令行压缩和删除所有源文件,batch-file,zip,command-line-arguments,7zip,Batch File,Zip,Command Line Arguments,7zip,基本上,我要做的是创建一个程序,它将压缩运行文件的所有文件夹,检查归档文件的完整性,然后删除源文件。理想情况下,我希望使用windows/7zip命令行完成所有操作 这就是我到目前为止所做的: for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\" -mx1 -r testarchive *.zip t testarchive.zip -sdel pause 这会很好地压缩和检查文件,但会删除所有新创建的存

基本上,我要做的是创建一个程序,它将压缩运行文件的所有文件夹,检查归档文件的完整性,然后删除源文件。理想情况下,我希望使用windows/7zip命令行完成所有操作

这就是我到目前为止所做的:

for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\" -mx1 -r testarchive *.zip t testarchive.zip -sdel
pause
这会很好地压缩和检查文件,但会删除所有新创建的存档及其源文件,但上次创建的存档除外

如有任何建议,我们将不胜感激

编辑:这看起来是朝着正确的方向迈出的一步,但仍然不起作用

for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\" -mx1 -r testarchive *.zip t testarchive.zip
for /d %%i in (*) do del "%%~fi\*.*" /q
pause

看看这个:我试着这样实现,但它仍然在做同样的事情。请参见上文。如果目标zip文件作为源文件位于目录中,则它将与所有其他文件一起删除。您可以将目标zip文件放在一个单独的文件夹中,这样它就不会被捕获到
del*
?您可以将del设置为对/f%%f in('dir/b/a-d^ | findstr/vile.zip')使用此命令
,以删除除.zip文件以外的所有内容。在这里找到的[