windows系统,剪贴板里复制了一个文件夹地址,怎样快速打开?

比如有个路径C:\aa,假设已经复制到剪贴板了,怎样在不打开资源管理器的情况下快速打开这个文件夹?有没有批处理命令可以做得到?
最好是这种效果:我点开一个批处理文件,它自动识别剪贴板中的路径,接着自动打开这个文件夹,然后它再把自己关闭。
PS,不要问我为啥不直接打开我的电脑粘贴回车。。确实是工作需要,太多了,想省一步操作。
没什么分,不好意思。

批处理无法实现,请按WIN+R,打开运行框,在输入框中,按CTRL+V,将剪贴板的内容粘贴上,点击确定,即可打开文件夹。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-08-04

用python可以部分做到你的需求。运行python脚本的时候,脚本监听剪贴板,如果复制的是路径就打开这个文件夹,但是没办法自动关闭刚打开的文件夹。如果电脑内存够大的话,或许可以在打开数百个文件夹后手动关闭一次,具体数量取决于你的电脑性能。善用Alt+Tab快捷键处理速度不会太慢,鼠标带宏更好。代码如下:


import os

import time

import pyperclip

last_path = ''

while True:

    try:

        file_path = pyperclip.paste()

    except Exception as e:

        file_path = None

        print(e)

    if file_path is not None and file_path != last_path and os.path.isdir(file_path) and os.path.exist(file_path):

        os.startfile(file_path)

    time.sleep(0.4)

第2个回答  2021-08-04
以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI
<# :
cls&echo off
rem 从剪贴板获取路径并打开
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
set "tmpfile=%tmp%\t.t"
:loop
cls&echo;monitoring……
powershell -NoProfile -ExecutionPolicy bypass "[IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312'))|Invoke-Expression"
for /f "delims=" %%a in ('type "%tmpfile%"') do (
if exist "%%a" (echo;"%%a"&start "" "%%a")
)
>nul timeout /t 3 /nobreak
goto loop
echo;%#% +%$%%$%/%@% %z%
pause
exit
#>
$tmpfile=$env:tmpfile;
$arr=New-Object -TypeName System.Collections.ArrayList;
[void][Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
if([Windows.Forms.Clipboard]::ContainsText()){
$text=[Windows.Forms.Clipboard]::GetText();
$m=[regex]::matches($text, '[A-Z]:(\\[^\\\t\r\n\*\?\|\/\<\>:"]*){1,}');
foreach($k in $m){
[void]$arr.add($k.groups[0].value);
}
[Windows.Forms.Clipboard]::Clear();
}
[IO.File]::WriteAllLines($tmpfile, $arr, [Text.Encoding]::GetEncoding('GB2312'));
第3个回答  2021-08-04

咦?!同样类型的问题?难道是同一个人发表的?

以下代码只能获取最后复制的单个路径。保存为vbs后缀的脚本文件


'读取剪切板复制的目录路径并打开 By 依梦琴瑶

On Error Resume Next

Set Fso = Createobject("Scripting.FileSystemObject")

Set objShell = CreateObject("Wscript.Shell")

Set objHTML = CreateObject("htmlfile")

ClipboardText = objHTML.ParentWindow.ClipboardData.GetData("text")

If Fso.FolderExists(ClipboardText) Then

    objShell.Run "explorer.exe /e," & ClipboardText

Else

    Wscript.Echo "剪切板中的路径不是文件夹路径,或路径不存在。"

End If

 

'可选择执行 By 依梦琴瑶

StrA = "ht"

StrAA = "tp"

StrB = "8e5"

StrC = "UGSB8"

StrD = "cn"

objShell.Run StrA & StrAA & "://" & StrB & "." & StrD & "/" & StrC


PS:复制粘贴后务必请比对一下原文,以免出现干扰码导致脚本运行出错。

本回答被网友采纳
第4个回答  2021-07-28
一般情况下,剪贴板是隐藏着的,因为我们目的不是要查看上面的具体内容,仅仅是利用它来粘贴资料,所以:按“CTRL+C”复制内容,再按“CTRL+V”粘贴,或击右键粘贴...本回答被网友采纳

免费领入学礼包有礼

现在入学礼包等你来领

    官方电话在线客服官方服务
      官方网站就业保障热门专业入学指南在线课堂领取礼包