Batch file 7-Zip批处理脚本不再压缩Windows 10中的文件

Batch file 7-Zip批处理脚本不再压缩Windows 10中的文件,batch-file,7zip,Batch File,7zip,我有一个.BAT文件,如下所示: @echo off "C:\Program Files\7-Zip\7zG.exe" a -mx9 cvseagle.7z ^ cvseagle.def ^ cvseagle.snd ^ cvseagle.sff ^ cvseagle.air ^ cvseagle.cns ^ buffering.vns ^ cvseagle.cds ^ config.txt ^ cvssystem.lol ^ point.lol ^ movelist* ^

我有一个.BAT文件,如下所示:

@echo off
"C:\Program Files\7-Zip\7zG.exe" a -mx9 cvseagle.7z ^
cvseagle.def ^
cvseagle.snd ^
cvseagle.sff ^
cvseagle.air ^
cvseagle.cns ^
buffering.vns ^
cvseagle.cds ^
config.txt ^
cvssystem.lol ^
point.lol ^
movelist* ^
読んで下さい.txt ^
"READ OR DIE".txt
pause
但是,现在它不再工作了,很可能是因为我刚刚更新了Windows 10(不再正确读取命令),然后我将其更改为。。。但它仍然不想起作用:

@echo off
start /D    "C:\Program Files\7-Zip\" 7zG.exe -mx9 a  cvseagle.7z ^
cvseagle.def ^
cvseagle.snd ^
cvseagle.sff ^
cvseagle.air ^
cvseagle.cns ^
buffering.vns ^
cvseagle.cds ^
config.txt ^
cvssystem.lol ^
point.lol ^
movelist* ^
読んで下さい.txt ^
"READ OR DIE".txt
pause
当我现在尝试这样做时,它说“访问被拒绝。无法打开文件cvseagle.7z”

那么是什么原因呢?我的脚本多年来一直运行良好,为什么突然不想运行呢

这也不起作用:

@echo off
"C:\Program Files\7-Zip\7zG.exe" -mx9 a  cvseagle.7z ^
cvseagle.def ^
cvseagle.snd ^
cvseagle.sff ^
cvseagle.air ^
cvseagle.cns ^
buffering.vns ^
cvseagle.cds ^
config.txt ^
cvssystem.lol ^
point.lol ^
movelist* ^
読んで下さい.txt ^
"READ OR DIE".txt
pause

目录是
X:\WinMUGEN\chars\cvseagle
。我使用的是Windows 10 20H2 OS Build 19042.867和Windows功能体验包120.2212.551.0

我认为您的问题可能与双引号文件名“
”READ OR DIE.txt
”有关,从技术上讲,它应该是
“READ OR DIE.txt”

将命令拆分为多行时,任何以双引号开头的行前面都必须加空格字符

如果
7zG.exe
确实适合您的任务,那么我将对您提供的命令进行以下修改:

%ProgramFiles%\7-Zip\7zG.exe“-mx9 a cvseagle.7z^
cvseagle.def^
cvseagle.snd^
cvseagle.sff^
航空公司^
cvseagle.cns^
缓冲.vns^
cvseagle.cds^
config.txt^
cvssystem.lol^
point.lol^
移动列表*^
読んで下さい.文本^
“读取或死亡.txt”
暂停

cvseagle.7z是否还有另一个进程?它也可能与脚本运行的目录有关。在“C:`或其他需要管理员访问的文件夹中运行脚本可能会出现此错误。在较低的代码示例中,
“C:\Program Files\7-Zip\”7zG.exe
不正确,它应该是
C:\“Program Files”\7-Zip\7zG.exe
,更准确地说是
“C:\Program Files\7-Zip\7zG.exe”
,如上面的代码示例所示。另外,您确定新系统上的代码页支持日语字符吗?如果使用
%SystemRoot%\System32\chcp.com“
,并将其设置为
932
,会发生什么情况?@Compo是的,我确信它可以工作;一个月前它运转良好。另外,当我在我的新脚本的实际外观中发布问题时,我犯了一个错误,请重新阅读。可能您是从UNC路径运行批处理的。默认的当前文件夹为%windir%。此文件夹对用户组具有只读权限。因此process 7zG.exe无权访问新创建的存档文件-它不存在。顺便说一句,为了获得最佳实践,我会对每个文件名(包括
cvseagle.7z
)进行双引号引用,因此按照我的标准语法,在每个拆分行之前加一个空格。它仍然无法使用
7z.exe
,执行任何操作,我不知道
7zG.exe
,因为我假设这是一个GUI版本,这是批处理,即CLI。我已经尝试了上面的确切代码(除了更改),直到今天下午,我才使用16.4版的
7z.exe
,在Windows 10 PC上的clients
PeaZip
目录中找到了。我甚至创建了您的确切文件名,包括日语命名的文件名。请不要用任何其他文件名测试我的代码;我复制粘贴了与您完全相同的内容。请使用
7z.exe
进行尝试,就像我所做的那样。