无法在 MinGW shell 中复制/粘贴

Posted

技术标签:

【中文标题】无法在 MinGW shell 中复制/粘贴【英文标题】:Unable to copy/paste in MinGW shell 【发布时间】:2013-04-28 03:37:27 【问题描述】:

我刚刚在 Windows 上安装了 MinGW,但我无法像在 Linux 甚至 PuTTY 上习惯的那样复制/粘贴。将文本(例如从 chrome)复制和粘贴到 MinGW shell 中的技巧是什么?

【问题讨论】:

【参考方案1】:

右键单击命令窗口的标题栏并选择“属性”,然后在“选项”选项卡上勾选“快速编辑模式”框,然后单击“确定”。

之后,您可以使用鼠标右键从剪贴板粘贴文本,按住鼠标左键的同时突出显示文本,然后使用 ENTER 键复制选定的文本。

此过程适用于 Windows 7/8,不适用于 Windows 10。

【讨论】:

注:您还必须取消选中“插入模式”选项。 奇怪,我的 MinGW git bash 终端没有属性项。但是它确实有这两个选项:1)按键盘上的insert 键进行粘贴,2)右键单击终端->选项->鼠标->“右键单击操作” RadioButton:Paste 到 rc-粘贴 @kayleeFrye_onDeck 我假设您正在运行 Windows 10?我的回答是在 Windows 10 之前处理 Windows 命令提示符。【参考方案2】:

[Alternative] 对于 Windows 10 中的 MINGW64 (mintty 2.7.9) 终端,您可以启用 "Ctrl+Shift+letter 快捷键" 使用 (Ctrl+Shift+c) 执行复制并使用 (Ctrl+Shift) 进行粘贴+v)。

启用该功能:

    右键单击命令窗口 点击“钥匙” 选中“Ctrl+Shift+字母快捷键”复选框

当你 vi/vim 进入一个文件时:

要复制:突出显示您想要的部分并单击“y” 要剪切:突出显示您想要的部分并单击“d” 粘贴:Ctrl+Shift+v

【讨论】:

@parsecer 抱歉,我的回答对您没有帮助,但这是否证明投反对票是合理的?似乎我的回答对很多人来说并没有那么错误。正如我已经添加到我的答案中,我的解决方案不适用于 Windows 10。 关于 vim 的部分很有帮助,但是为了粘贴按 'p' 起作用的东西,'ctrl'+'shift'+'v' 没有。【参考方案3】:

这个薄荷错误CTRL + C & CTRL + V copy paste 解决了这个问题。它允许正常的 Control-C、Control-V 复制和粘贴,但代价是更改其他控制字符。因此,要停止运行的进程,您需要 Control-Shift-C,要中断它,您需要 Control-Shift-Z,要发送 EOT,您需要 Control-Shift-D。您可能会发现 Windows 复制和粘贴的优势超过了劣势。

该行为需要在.minttyrc 文件中设置一个标志。应该是这样的

CtrlShiftShortcuts=yes
CtrlExchangeShift=yes

【讨论】:

2019+的正确答案 2021 年为我工作【参考方案4】:

Win7 运行 MINGW64 (mintty 2.7.3),自此评论之日起,Git Bash 2.1.3.0 的当前版本随附。

右键shell标题栏>Mouse>Click actions下>Right mouse button>选择Paste单选按钮。

但是,我惊讶地发现这不允许我使用鼠标右键单击进行粘贴。

我还必须选择Application mouse mode > Default click target > Window

更改这两个设置后,我可以粘贴了。

因此,当前版本的 Git bash 附带的新 shell 似乎具有新功能。它似乎也有点马车。例如,通过 cli 运行一个可执行文件(例如 php -version 导致空输出并迫使我重新启动 shell)。等待新的更新,希望能解决这个问题。

【讨论】:

【参考方案5】:

@mrt 的上述解决方案是永久性的。对于 Windows 中的任何 16 位提示符,这是一种更快的方法:

复制

点击左上角的图标 > 编辑 > 标记,选择文本然后右击

粘贴

与上述类似的过程(使用编辑>粘贴)或只需按INSERT

【讨论】:

是的,我的解决方案是永久性的,这就是为什么我认为它比每次需要复制/粘贴内容时单击左上角的图标要快。 :)【参考方案6】:

我遇到了这个问题,上面的解决方案不适用于 Windows 10。这是因为菜单上没有属性。但是,通过上述解决方案内容,我能够为 Windows 10 解决它,如下所示: 右键单击 MINGW64 左上角的图标: 选择选项 现在选择键 在右手边你会找到快捷方式 如果不加厚,加厚复制粘贴 现在请始终记住复制和粘贴的说明,如下所示: 复制:Ctrl+Ins(插入) 即要在 MINGW 上复制,只需突出显示要复制的任何内容,然后按 Ctrl 插入键 粘贴; Shift+ 插入(插入) 即要粘贴,请将光标放在要粘贴的位置。然后按 Shift 插入键

现在选择鼠标 在右手边你会发现鼠标功能 如果不加粗,选中时加厚复制并复制为富文本 对于鼠标按键,厚厚的鼠标右键 注意:要在 MINGW 上复制,只需突出显示您要复制的任何内容。然后将光标放在要粘贴的位置。然后单击鼠标右键。 现在单击保存或应用然后保存。 我已经尝试过这些,一切都很好。 请注意,您也可以从任何其他来源复制并使用上述粘贴说明粘贴到 MINGW。

【讨论】:

【参考方案7】:

我更喜欢在 Console2 或 ConsoleZ 中运行 MSYS2 shell。这允许在选择时为粘贴和复制设置右键单击,就像在 Linux 和 PuTTY 中一样。它还将多个 MSYS2 shell 与选项卡组合在一个窗口中。

Windows 11 现在也有类似的终端程序,但我还没有用 MSYS2 尝试过...

【讨论】:

【参考方案8】:

好的,你需要做的是: 右键点击, 粘贴!

【讨论】:

这个答案既不简洁也不具描述性。

以上是关于无法在 MinGW shell 中复制/粘贴的主要内容,如果未能解决你的问题,请参考以下文章

还在复制粘贴网站 shell 命令?小心有毒!

电脑上能把粘贴改成一个健吗

Flutter 无法在 EditableText 中选择、复制或粘贴

mac电脑中无法进行复制粘贴如何解决

无法在 MFC 中使用 SetClipboardData 进行复制粘贴?

文档可修改,但不能复制粘贴,怎么办?