我发现这篇文章很有帮助,但由于缺少要点,无法发表评论。
我的问题是,如何禁用复制路径周围的引号(“)?
我得到了类似
"C:\Windows"
但我想
C:\Windows
编辑:我希望使用 Windows 资源管理器中包含的 QuickSetting 解决方案。如此答案所述https://superuser.com/a/1266115/902847
答案1
假设你正在使用路径 复制 复制(如“接受”的答案中所述您引用的超级用户问题),只需在 Windows 的“开始”菜单中打开指向路径 复制 复制设置,选择选项选项卡并确保未选中“在复制的路径周围添加引号”:
答案2
如果你可以使用类似自动热键,在脚本中尝试一下。
代码应该是相当不言自明的,但是为了清楚起见,我将解释一下:
只有在 Windows 资源管理器窗口打开时才会注册。存储当前剪贴板后,它会发送 Shift+AppsKey,从而打开扩展的上下文菜单。然后,它会发送字母“a”,这是该菜单中“复制为路径”的快捷键。之后,它会恢复您之前的剪贴板并“返回”值。您可以以任何您想要的方式单独使用此值。基本上,您可以将其存储在变量中,然后在另一个函数中使用它。例如,将其用作 Google 搜索的参数。您需要以这种方式编写其余的逻辑以供使用,因为仅仅返回一个值而不对其进行任何操作是没有意义的。
底部的热键是 Shift+Alt+f(可调;阅读文档了解更多信息)触发该功能并在消息框中显示结果。
#If WinActive("ahk_class CabinetWClass") || WinActive("ahk_class ExploreWClass")
;; Returns the unquoted full-path for the selected file/folder in Windows Explorer
GetUnquotedFullPathFromSelectionInExplorer() {
local
clipSaved := ClipboardAll
Clipboard := ""
SendInput, +{AppsKey}a
ClipWait, 3 ; Wait up to three seconds
if (ErrorLevel && !Clipboard) {
Clipboard := clipSaved
MsgBox, Failed to copy path to clipboard
Return
}
fullPath := Clipboard
Clipboard := clipSaved
Return Trim(fullPath, """") ; trims any surrounding double quotes
}
;; Makes a popup message box with the unquoted full-path for the selected file/folder
;; in Windows Explorer
+!f:: ; Shift+Alt+f
MsgBox, % GetUnquotedFullPathFromSelectionInExplorer()
Return
#If
如果您希望将路径保留在剪贴板中,则路径会更短。例如:
#If WinActive("ahk_class CabinetWClass") || WinActive("ahk_class ExploreWClass")
;; Updates the clipboard with the unquoted full-path for the selected
;; file/folder in Windows Explorer
+!f:: ; Shift+Alt+f
Clipboard := ""
SendInput, +{AppsKey}a
ClipWait, 3 ; Wait up to three seconds
if (ErrorLevel && !Clipboard) {
MsgBox, Failed to copy path to clipboard
Return
}
Clipboard := Trim(Clipboard, """")
Return
#If