在Windows XP上,是否有快捷键可以将剪贴板的内容粘贴到命令提示符窗口中(而不是使用鼠标右键)?
典型的Shift+Insert在这里似乎不起作用。
在Windows XP上,是否有快捷键可以将剪贴板的内容粘贴到命令提示符窗口中(而不是使用鼠标右键)?
典型的Shift+Insert在这里似乎不起作用。
当前回答
在Windows 10中,你可以在命令提示符中启用Ctrl + C和Ctrl + V:
其他回答
我花了一点时间来弄清楚为什么你的AutoHotkey脚本不适合我:
; Use backslash instead of backtick (yes, I am a C++ programmer).
#EscapeChar \
; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
SendInput {Raw}%clipboard2%
return
事实上,它依赖于击键,因此也依赖于键盘布局! 所以当你像我一样不幸只有AZERTY键盘时,你的建议就行不通了。更糟糕的是,我发现没有简单的方法来替换SendInput方法或扭曲它的环境来修复这个问题。例如SendInput "1"不发送数字1。
我必须把每个字符都转换成统一码,才能在我的电脑上使用:
#EscapeChar \
; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
clipboard3 := ""
Loop {
if (a_index>strlen(clipboard2))
break
char_asc := Asc(SubStr(clipboard2, a_Index, 1))
if (char_asc > 127 and char_asc < 256)
add_zero := "0"
else
add_zero := ""
clipboard3 := clipboard3 . "{Asc " . add_zero . char_asc . "}"
}
SendInput %clipboard3%
return
不是很简单……
我最近发现,命令提示符支持通过鼠标右键单击上下文菜单。你可以在这里找到更多细节:http://www.askdavetaylor.com/copy_paste_within_microsoft_windows_command_prompt.html
你可以尝试使用Texter并创建一些不太可能的东西,如:
./p,由空格触发并将文本替换为%c
我刚刚测试了一下,它工作得很好。唯一的问题是使用一个罕见的序列,因为Texter不能限制这只是cmd。
可能还有其他类似的工具可以工作,甚至AutoHotKey,在此基础上构建的Texter可以做得更好,但Texter很容易:-)
谢谢,巴勃罗,这正是我要找的!但是,如果我可以冒昧地稍微改进您的脚本,我建议用以下代码替换您的^V宏:
; Use backslash instead of backtick (yes, I am a C++ programmer).
#EscapeChar \
; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
SendInput {Raw}%clipboard2%
return
使用SendInput的优点是
它不依赖于命令提示系统菜单中有“Alt+Space E P”菜单项来进行粘贴(适用于英语和西班牙语,但不适用于所有语言)。 它避免了你在创建和销毁菜单时看到的讨厌的闪烁。
注意,在SendInput命令中包含“{Raw}”是很重要的,以防剪贴板碰巧包含“!”,“+”,“^”或“#”。
注意,它使用StringReplace删除多余的Windows回车字符。谢谢hugov的建议!
谢谢,巴勃罗,为参考AutoHotkey实用程序。 因为我已经安装了Launchy,它使用Alt+Space,我必须修改它,但添加Shift键如下所示:
; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !+{Space}ep
return