我最近一直在尝试批处理文件,最近我找到了一个老问题的答案:使用批处理脚本突出显示/选择文件。现在我已经完成了,我想知道是否可以对格式变量(即 *.txt)使用相同的方法。更具体地说,我想创建一个脚本来对 .jpg 和 .png 等图像文件执行相同的操作,以搜索全部指定磁盘或路径中的指定格式。这是我使用的模板:
%SystemRoot%\explorer.exe /select, "%TARGET%"
我已经尝试过简单地将变量 *.jpg 和 *.png 放置在 %TARGET% 的位置,带引号和不带引号。我还出色地意识到考虑到图像数量、计算机性能等,这可能需要大量时间...如能得到任何帮助,我们将不胜感激。
答案1
我可以使用批处理文件来突出显示特定的文件格式吗?
您当然可以使用批处理脚本来选择(或突出显示所有)具有特定文件扩展名的文件,这些文件都位于同一个文件夹中发送键和脚本如下例所示。
批处理脚本示例
确保将SET Extension=
和SET Folder=
变量的值更改为您需要的值,以满足需要。
请注意,如果您想使用此方法搜索多个文件扩展名,则SET Extension=
变量的变量值应该以 分隔每个扩展名,OR
例如,如果您想查看 TXT、PDF 和 BMP 文件,则可以使用SET Extension=*.txt OR *.pdf OR *.bmp
。
@ECHO ON
SET Folder=C:\Users\User\Desktop\Test
SET Extension=*.txt
:::SET Extension=*.txt OR *.pdf OR *.bmp
EXPLORER "%Folder%"
:VBSDynamicBuild
SET TempVBSFile=%temp%\~tmpSendKeysTemp.vbs
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
ECHO Wscript.Sleep 900 >>"%TempVBSFile%"
ECHO WshShell.SendKeys "{F3}" >>"%TempVBSFile%"
ECHO Wscript.Sleep 900 >>"%TempVBSFile%"
ECHO WshShell.SendKeys "%Extension%" >>"%TempVBSFile%"
ECHO Wscript.Sleep 900 >>"%TempVBSFile%"
ECHO WshShell.SendKeys "{TAB 2}" >>"%TempVBSFile%"
ECHO Wscript.Sleep 900 >>"%TempVBSFile%"
ECHO WshShell.SendKeys "^a" >>"%TempVBSFile%"
CSCRIPT //nologo "%TempVBSFile%"
EXIT
笔记: 上述脚本已通过测试Windows 10.如果您使用Windows 7的,你需要确保使用
"{TAB 3}"
而不是"{TAB 2}"
按下三次 tab 键。