Batch file 如果文件大小等于这个,转到这个,转到那个
我有一个批处理文件,它使用“move”命令将DLL文件从Batch file 如果文件大小等于这个,转到这个,转到那个,batch-file,if-statement,Batch File,If Statement,我有一个批处理文件,它使用“move”命令将DLL文件从C:\Program Files\directory\file.DLL重命名为C:\Program Files\directory\file.DLL.orig,该命令工作得非常好。 批处理文件的下一部分使用“copy”命令将新版本的file.dll从网络位置复制到C:\Program Files\directory\,该命令也可以正常工作。 我有一个作为GPO运行的脚本,它也可以正常工作 原始DLL文件为38892 KB,从网络位置复制的D
C:\Program Files\directory\file.DLL
重命名为C:\Program Files\directory\file.DLL.orig
,该命令工作得非常好。
批处理文件的下一部分使用“copy”命令将新版本的file.dll
从网络位置复制到C:\Program Files\directory\
,该命令也可以正常工作。
我有一个作为GPO运行的脚本,它也可以正常工作
原始DLL文件为38892 KB,从网络位置复制的DLL文件为38856 KB。
我不希望每次用户重新启动计算机时都替换此文件。我想修改脚本,以便它检查C:\Program Files\directory\
位置中的DLL文件是否为38892 KB,如果为38892 KB,它将把新的DLL文件复制到该位置,但如果为38856 KB,它将退出脚本。
如何将if语句放入批处理文件中以检查这一点?多谢各位
for %%A in ("C:\Program Files\directory\file.dll") do if "%%~zA"=="38892" goto :NewIsInstalled
rem ... OK, now we know the installed DLL is not the expected size so copy in the right one.
---或---
请参阅“for”和“call”的帮助以了解“%~z1”
---或---
请参阅“for”和“call”的帮助以理解“%~z1”。或将其用作第一行:注意,文件大小以字节为单位
@echo off
for %%A in ("C:\Program Files\directory\file.dll") do if "%%~zA"=="38856" goto :EOF
或者将其用作第一行:注意,文件大小以字节为单位
@echo off
for %%A in ("C:\Program Files\directory\file.dll") do if "%%~zA"=="38856" goto :EOF
批处理文件使用和命令行使用混合使用%%和%。目前,这两种方式都不起作用。批处理文件和命令行的使用混合使用%%和%。从目前的情况看,这两种方法都行不通。