305

是否有用于将剪贴板内容粘贴到 Windows XP 上的命令提示符窗口中的键盘快捷键(而不是使用鼠标右键)?

典型的Shift+Insert似乎在这里不起作用。

4

21 回答 21

428

是的。。但是很尴尬。关联

alt+ Space, e, k<-- 复制和
alt+ Space, e, p<-- 粘贴。

于 2008-09-25T07:36:07.623 回答
163

我个人使用一个小的AutoHotkey脚本来重新映射某些键盘功能,对于我使用的控制台窗口(CMD):

; Redefine only when the active window is a console window 
#IfWinActive ahk_class ConsoleWindowClass

; Close Command Window with Ctrl+w
$^w::
WinGetTitle sTitle
If (InStr(sTitle, "-")=0) { 
    Send EXIT{Enter}
} else {
    Send ^w
}

return 


; Ctrl+up / Down to scroll command window back and forward
^Up::
Send {WheelUp}
return

^Down::
Send {WheelDown}
return


; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !{Space}ep
return

#IfWinActive 
于 2008-09-25T13:30:58.130 回答
137

不是真正的编程相关,但我在谷歌上找到了这个,没有直接的键盘快捷键,但让它更快一点。

要启用或禁用快速编辑模式:

  1. 打开 MS-DOS 程序或命令提示符。
  2. 右键单击标题栏,然后按属性。
  3. 选择选项选项卡。
  4. 选中或取消选中快速编辑模式框。
  5. 按确定。
  6. 在“将属性应用到快捷方式”对话框中,仅当您希望仅更改此窗口的此会话的快速编辑设置时选择将属性应用到当前窗口,或选择修改启动此窗口的快捷方式以更改所有未来调用的快速编辑设置命令提示符或 MS-DOS 程序。

快速编辑

在启用 QuickEdit 时复制文本:

  1. 单击并将鼠标指针拖动到所需的文本上。
  2. 按 Enter(或右键单击窗口中的任意位置)将文本复制到剪贴板。

在启用 QuickEdit 时粘贴文本:

  1. 右键单击窗口中的任意位置。

在禁用快速编辑时复制文本:

  1. 右键单击标题栏,按菜单上的编辑,然后按标记。
  2. 将鼠标拖到要复制的文本上。
  3. 按 Enter(或右键单击窗口中的任意位置)将文本复制到剪贴板。

在禁用快速编辑时粘贴文本:

  1. 右键单击标题栏,按菜单上的编辑,然后按粘贴。
于 2008-09-25T07:39:01.893 回答
35

谢谢巴勃罗,正是我想要的!但是,如果我可以冒昧地稍微改进一下您的脚本,我建议您将 ^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的建议!

于 2010-03-10T23:34:54.730 回答
18

还有一个很棒的开源工具,叫做 clink,它扩展了 cmd 的许多功能。其中之一是能够使用 ctrl+v 插入文本。

于 2014-01-20T18:47:30.117 回答
15

在 Windows 10 上,您可以启用Ctrl+ CCtrl+ V在命令提示符下工作

在此处输入图像描述

在此处输入图像描述

于 2015-07-19T21:58:05.890 回答
8

是一个可以在 Windows 上执行此操作的免费工具。我更喜欢它而不是脚本,因为它很容易设置。它作为一个快速的本机应用程序运行,适用于 XP 及更高版本,具有允许重新映射命令窗口的复制/粘贴/选择键的配置设置:

在此处输入图像描述

另外,我认识开发人员。

于 2016-11-04T09:28:31.357 回答
4

感谢 Pablo 提到 AutoHotkey 实用程序。由于我安装了使用Alt+的 Launchy,因此Space我必须对其进行修改,但要添加Shift密钥,如下所示:

; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !+{Space}ep
return
于 2010-05-04T00:19:06.883 回答
4

最简单的方法就是将要粘贴的文本复制到 cmd 并打开 cmd 转到“属性”--->“选项”选项卡---->选中(打勾)“快速编辑模式”并单击“好的” .....现在您可以通过用鼠标右键单击来粘贴剪贴板中的任何文本。

谢谢..

于 2016-07-17T06:53:39.637 回答
3

这不是真正的快捷方式,而只是快速访问控制菜单:Alt-space EP

如果您可以使用鼠标,请在我尝试时右键单击 cmd 窗口作为粘贴。

于 2008-09-25T07:37:04.720 回答
3

理论上,DOS Prompt 中的应用程序有自己的剪贴板和快捷方式。从 Windows 剪贴板导入文本是“额外的”。但是您可以使用 Alt-Space 打开提示窗口的系统菜单,然后按 E、P 选择编辑、粘贴菜单。但是,MS 可以使用 Win 键提供快捷方式。没有机会在 DOS 应用程序中使用。

于 2015-08-26T12:46:35.540 回答
2

我花了一点时间才弄清楚为什么你的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。

我必须把每个字符都转换成它的 unicode 才能让它在我的电脑上工作:

#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

不是很简单...

于 2013-07-13T13:50:48.500 回答
2

我按照@PabloG的步骤如下

  1. 转到http://www.autohotkey.com/ - 下载 autohotkey
  2. 按照简单的安装步骤
  3. 安装后创建新的 *.ahk 文件如下右击桌面 > 新建 > Autohotkey 脚本 > giveAnyFileName.ahk
  4. 右键单击此文件>编辑
  5. 复制@PabloG 在他的回答中给出的粘贴自动热键脚本
  6. 保存并关闭
  7. 双击文件运行
  8. 现在完成,您应该可以在命令提示符下使用Ctrl+进行粘贴v
于 2015-08-26T12:42:37.720 回答
2

如果您使用剪贴板管理器Ditto(开源,免费),您可以简单地使用从 Ditto 粘贴的快捷方式,它会为您将剪贴板粘贴到 CMD 中。

在此处输入图像描述

于 2015-10-04T16:52:31.810 回答
1

您可以尝试使用Texter并创建一些不太可能的东西,例如:

./p ,由空格触发并用 %c 替换文本

我刚刚测试了它,它工作正常。唯一的问题是使用罕见的序列,因为 Texter 不能将其限制为 cmd。

可能还有其他这种类型的实用程序可以工作,甚至AutoHotKey,Texter 建立在它的基础上可以做得更好,但是 Texter 很容易:-)

于 2008-09-25T07:46:07.443 回答
1

更简单的方法是使用 windows powershell 而不是 cmd。它适用于文本器。

于 2010-08-13T08:10:45.133 回答
1

我最近发现命令提示符通过鼠标右键单击支持上下文菜单。您可以在此处找到更多详细信息:http ://www.askdavetaylor.com/copy_paste_within_microsoft_windows_command_prompt.html

于 2010-12-29T12:58:03.243 回答
1

非常简单的解决方案可能是Console 2,重新定义键,然后就可以了。

于 2014-05-02T12:58:49.630 回答
1

如果您是 Cygwin 用户,您可以将以下内容附加到您的 ~/.bashrc 文件中:

stty lnext ^q stop undef start undef

并将以下内容添加到您的 ~/.inputrc 文件中:

"\C-v": paste-from-clipboard
"\C-C": copy-to-clipboard

重新启动 Cygwin 终端。

(注意,我使用大写的 C 进行复制,因为 CTRL+c 在大多数控制台上都分配给了 break 功能。根据口味调整。)

来源

于 2016-02-27T23:15:49.077 回答
1

而不是“右键单击”....通过键入 Alt/空格键来启动您的会话(一旦您在命令提示符窗口中)。这将打开命令提示符窗口菜单,您将看到熟悉的带下划线的键盘命令快捷方式,就像在 Windows GUI 中一样。

祝你好运!

于 2016-05-18T02:03:14.923 回答
-4

在 VISTA 命令提示下: 单击系统图标 从菜单中选择默认值 在选项组的选项选项卡上,我选择了“快速编辑模式”、“插入模式”和“自动完成” 我认为“快速编辑模式”是什么使它工作。

要在插入点粘贴剪贴板中的任何内容:右键单击。从命令窗口复制 通过按住鼠标左键并将指针拖动到要复制的内容上进行选择 选择后,单击鼠标右键 要粘贴到插入点,再次单击鼠标右键。

于 2011-06-02T23:39:34.983 回答