我想打开并选择一个文件现存的命令行中的资源管理器窗口。
- 打开新窗口:
explorer.exe /select, "FILE_PATH"
- 运行文件:
cmd.exe /c start "" "FILE_PATH"
是否可以使用它并让它选择一个特定的文件?
cmd.exe /c start "" "FOLDER_PATH"
答案1
CMD 是一个解释器;为用户提供访问 Windows™ 功能的界面/语言。它不提供对系统内存或 CPU 寄存器的直接访问(低级编程语言的功能)。
要“打开并选择一个文件”(在资源管理器窗口中)您将:
explorer.exe /select, "FILE_PATH"
要打开资源管理器窗口来手动选择文件,您可以:
cmd.exe /c start "" "FOLDER_PATH"
如果“现有的资源管理器窗口”已经打开,而你只想手动选择一个文件,你可以启用资源管理器窗口(已经打开,而不是打开另一个资源管理器窗口)。
Windows 操作是 GUI 的一个功能,而 CMD 为 Windows™ 提供了一个 CLI,因此您需要用(低级)语言或允许您访问此类功能的语言编写代码,即激活打开的窗口,例如其他解释器(AutoHotKey/AutoIt/VBS)、编译器(C/VBA)或汇编/机器代码(可以通过 CMD(forfiles
或fc
)或相关实用程序(例如Debug
或)进行交互Certutil
)
请参阅:
Windows 中的 CMD 命令切换到已打开的应用程序
一种解决方法是通过explorer "FOLDER_PATH"
手动选择文件或自动选择打开您选择的文件夹explorer.exe /select, "FILE_PATH"
,然后通过关闭现有的资源管理器窗口taskkill /im explorer.exe /fi "windowtitle eq %title%"
答案2
我也遇到了一模一样的问题,现在用Listary来解决这个问题,预设动作如下图所示: 用于打开 QTTabBar 可以捕获的包含文件夹的列表操作设置
列表动作设置为:
path: explorer.exe
parameter: /select, "{action_path}"
我不知道 Listary 对脚本做了什么,但它就是有效。
希望能帮助到你。