0
我是在一个批处理文件试图这样(非常基本的)命令批处理文件变量替换
takeown.exe /F c:\WINDOWS\SYSTEM32\%1%
ICACLS C:\WINDOWS\SYSTEM32\%1% /grant MY\PC:F
;当我从一个管理员运行CMD提示符:
c:\Data>takeownscript.bat drivers\netbio.sys
它抛出一个错误他说:
C:\数据> takeown.exe/F C:\ WINDOWS \ SYSTEM32 \ DRIVERS \ netio.sys
SUCCESS:用户“MY \ PC”拥有的文件(或文件夹):“c:\ WINDOWS \ SYSTEM32 \ drivers \ netio.sys” 。
C:\数据> ICACLS C:\ WINDOWS \ SYSTEM32 \ DRIVERS \ netio.sysF C:\ WINDOWS \ SYSTEM32 \ DRIVERS \ netio.sysF:系统找不到指定的 文件。成功处理0个文件;处理失败1 文件
如何/为什么F被追加到驱动程序路径?我怀疑我没有使用正确的替换语法。
批处理文件的参数应该使用'%1'来引用,而不是'%1%',如本[问题]中所述(https://stackoverflow.com/questions/14286457/using-parameters-in-批处理文件 - 在-DOS命令行)。 – Laf
@Laf的工作。请考虑这个查询解决! – Zoso