使用批处理文件在便携式设备上打开文件夹

Open folder on portable device with batch file

提问人:Kalev Maricq 提问时间:9/9/2016 更新时间:9/15/2023 访问量:2195

问:

  1. 总体目标:创建一个桌面快捷方式,以隐藏我手机SD卡(通过USB连接)的文件结构。请注意,这是在工作计算机上,所以我不能做任何疯狂的事情。 我尝试使用普通快捷方式无济于事,因此如果不能使用快捷方式,我决定尝试使用批处理。如果可以使用快捷方式,或者有比批处理更好的选择,请告诉我。
  2. 具体问题:如何使用批处理文件打开文件夹?我可以手动打开资源管理器,将地址粘贴到栏中并转到那里,所以应该有一种方法可以模仿这一点,但到目前为止,我的尝试都没有成功。

尝试:

%SystemRoot%\explorer.exe "Computer\My S4\Phone\Android\data\com.dropbox.android\files\scratch\"
explorer Computer/My S4/Phone/Android/data/com.dropbox.android/files/scratch
start "" "Computer\My S4\Phone\Android\data\com.dropbox.android\files\scratch\"
start Computer\My S4\Phone\Android\data\com.dropbox.android\files\scratch
Windows 批处理文件

评论

0赞 Squashman 9/9/2016
要打开文件夹:start c:\temp
0赞 SomethingDark 9/9/2016
这是不可能的。您的手机位于一个完全独立的文件系统上,您无法从命令行访问该文件系统。
0赞 Kalev Maricq 9/9/2016
@SomethingDark 如果我手动打开资源管理器并将地址粘贴到地址栏中,它就可以工作了。有没有办法让计算机做与我手动做同样的事情?
0赞 SomethingDark 9/9/2016
您可以尝试使用自动热键。
0赞 Kalev Maricq 9/12/2016
@SomethingDark 看起来这需要安装其他软件,而我无法在我的工作计算机上安装。您知道任何以编程方式导航到某个文件夹的本机 Windows 功能吗?我甚至不需要像总是将相同的两个文件复制到同一位置那样查看文件。

答:

-1赞 pgampe 9/11/2016 #1

不要使用 which 不是设备名称,而是尝试使用 or which both 引用本地计算机。Computer\\?\\\.\

3赞 Andry 2/2/2021 #2

有一种方法可以直接在 的 Windows 资源管理器窗口中打开 MTP 设备文件夹。Windows 7 x64

步骤如下:

  1. 使用文件夹打开 Windows 资源管理器,例如:My Computer

    • start "" "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
    • start "" "shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
    • explorer "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
    • explorer "shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"

    可以在 Internet 上找到的 GUID 的完整列表,例如:https://www.tenforums.com/tutorials/3123-clsid-key-guid-shortcuts-list-windows-10-a.html

  2. 连接 MTP 设备并在设备中启用文件传输模式。它必须在窗口中显示为便携式设备条目。My Computer

  3. 将 MTP 设备入口图标拖放到桌面上。

  4. 打开任何记事本,例如 Windows 记事本:Win+R -> notepad

  5. 将桌面图标拖放到记事本窗口中。 在记事本的末尾,文本将类似于:(删除空格)。 您可以通过将字符串复制到记事本的另一个实例中并通过 to nothing 替换它们来清理字符之间的空格。::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_0e8d&pid_201d&mi_00#7&1084e14&0&0000#{6ac27878-a6fa-4155-ba85-f98f491d4f33}Ctrl+H

  6. 现在您可以直接打开 MTP 设备文件夹:start "" "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_0e8d&pid_201d&mi_00#7&1084e14&0&0000#{6ac27878-a6fa-4155-ba85-f98f491d4f33}\<your-local-path-to-folder>"

存在等待超时,因此 Windows 资源管理器窗口可能不会立即打开。

要生成目标文件夹的快捷方式,您可以使用此处的脚本: https://github.com/andry81/contools/tree/HEAD/Scripts/Tools/ToolAdaptors/vbs/make_shortcut.vbs

例如:

>
make_shortcut.vbs myphonecamera.lnk "shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_0e8d&pid_201d&mi_00#7&1084e14&0&0000#{6ac27878-a6fa-4155-ba85-f98f491d4f33}\SD-card Samsung\DCIM\Camera"

现在,您可以单击以打开该文件夹或使用 Windows 资源管理器:myphonecamera.lnk

>
explorer myphonecamera.lnk
3赞 Robert 6/17/2021 #3

这是对 Andry 回答的补充:

获取 MTP 文件夹的整个路径可能非常复杂,例如::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_03de&pid_21e7&mi_00#6&a5ebb37&1&0000#{6ac27878-a6fc-2155-ea85-f98f491d4f33}\{E4FC4EA5-FFFF-FFFF-0000-000000000000}

若要获取路径,请执行以下操作:

  1. 在 Windows 资源管理器中,选择要获取其路径的 MTP 设备上的文件夹。
  2. 打开它的上下文菜单并选择Copy
  3. 在资源管理器中打开电脑上的文件夹,打开空闲区域的上下文菜单,然后选择Paste Shortcut
  4. 现在我们也需要一个可以读取文件的人。我使用过LECmd工具。执行。.lnkLECmd.exe -f <path to the .lnk file created in step 3>

您将获得大量打印到控制台的内容。有趣的部分是紧挨着结束。Parsing Path

就我而言,它是::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_03de&pid_21e7&mi_00#6&a5ebb37&1&0000#{6ac27878-a6fc-2155-ea85-f98f491d4f33}\SID-{10001,,21003612160}\{E4FC4EA5-FFFF-FFFF-0000-000000000000}

现在我们已经接近了,不幸的是,上面显示的路径不能使用,因为它包含一个无效的部分:。删除该部分,您可以使用以下命令打开该 MTP 文件夹中的资源管理器\SID-{10001,,21003612160}

start "" "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\\?\usb#vid_03de&pid_21e7&mi_00#6&a5ebb37&1&0000#{6ac27878-a6fc-2155-ea85-f98f491d4f33}\{E4FC4EA5-FFFF-FFFF-0000-000000000000}"