对批次本身使用 ATTRIB 命令

对批次本身使用 ATTRIB 命令

嗯,事情是这样的,我的批处理文件中有这个:

attrib +R +H +S "%STARTUP%\%0"
icacls "%STARTUP%\%0" /deny *S-1-1-0:^(DE,WA^) *S-1-5-7:^(DE,WA^)
attrib +R "%STARTUP%\%0"
icacls "%STARTUP%\%0" /deny *S-1-1-0:^(DE,DC,WA^) *S-1-5-7:^(DE,DC,WA^)

我在第一个 attrib 命令上遇到了访问被拒绝的问题,但 icacls 显示 0 个错误,如果你考虑到我没有更改执行权限,这是正常的。我没有找到关于这个主题的太多信息,我找到的最接近的信息是批处理文件如何删除自身并退出命令提示符如何让批处理文件自行删除

PD:我搜索这个,因为这四行位于我的 .bat 的最底部,所以,也许如果我退出然后使用 attrib 命令,也许可以,但我尝试了一下,但没有成功。我尝试:

set temptrue=true
(goto) 2>nul & if %temptrue% equ true (
    attrib +R +H +S "%STARTUP%\%0"
    icacls "%STARTUP%\%0" /deny *S-1-1-0:^(DE,WA^) *S-1-5-7:^(DE,WA^)
    attrib +R "%STARTUP%\%0"
    icacls "%STARTUP%\%0" /deny *S-1-1-0:^(DE,DC,WA^) *S-1-5-7:^(DE,DC,WA^)
)

此致敬意,TYA。

相关内容