2013-03-28 57 views
-1

我可以使用变量%CD%来运行命令行病毒扫描程序,以像这样从命令提示符处扫描当前目录。如何使用变量正确获取当前目录路径?尝试运行病毒扫描程序从上下文菜单中扫描当前目录

C:\AVPTool\AVPTool.exe SCAN %CD% /R:KAVSCANLOG.txt 

我想从上下文菜单中使用它只需点击两下即可轻松扫描文件夹。

我修改注册表和HKEY_CLASSES_ROOT\Directory\shell创建了一个名为Scan with AVPTool键,该键中,我创建另一个关键名为command,改变了价值

"cmd.exe /k cd %1 & C:\AVPTool\AVPTool.exe SCAN %CD% /R:KAVSCANLOG.txt" 

但这既然%CD%不工作没有得到翻译成当前的工作目录。

+0

第一部分(cd%1)是否有效?如果是这样,那么当您只需再次写入%1时,为什么需要%CD%? – 2013-03-28 03:00:56

+0

@Bill_Stewart谢谢,现在它工作。正确的命令为:'cmd.exe/c cd/d%1 && C:\ AVPTool \ AVPTool.exe SCAN%1/i9 /R:KAVSCANLOG.txt && start notepad“%1/KAVSCANLOG.txt”' – user2217849 2013-03-28 12:22:05

回答

1

我想尝试

"cmd.exe /k cd %1 & C:\AVPTool\AVPTool.exe SCAN "%1" /R:KAVSCANLOG.txt" 

因为行会通过更换% - 变量和处理THEN执行,%CD%的人会用任何调用进程的当前目录是被替换,而不是进程处于RUN状态的目录。当前目录仅在cd已执行后更改,到那时,%CD%已被安装到命令中 - 与调用cmd.exe时相同。