【问题标题】:Piping output from Git Bash to clipboard从 Git Bash 管道输出到剪贴板
【发布时间】:2013-09-23 16:12:04
【问题描述】:

我经常需要将我的 Git 输出转发给我一直友好的代码伙伴。我知道的最好方法是这样做:

Right-click Git Bash title bar > Edit > Mark > Select lines > Enter

Bam - 我选择的所有内容都在我的剪贴板中,我充满了喜悦。

问题是,这种方式很无聊,我喜欢我与 Git 的关系充满兴奋魅力

在 Windows 中,您可以像这样将控制台输出通过管道传输到剪贴板:

C:\> dir | clip

太棒了,对吧?好吧,当你尝试在 Git Bash 中做某事时,会发生以下情况:

> git branch | clip
sh.exe": clip: command not found

这让我很难过。有没有办法将 Git Bash 输出通过管道传输到我在 Windows 中的剪贴板,这样我就可以再次充满欢乐?

【问题讨论】:

    标签: git clipboard git-bash


    【解决方案1】:

    好吧,实际上git branch | clip 对我来说很好用。 clip 命令只是从 C:\Windows\System32\ 调用 clip.exe。确保在 PATH 的某个位置安装了 clip.exe

    【讨论】:

    • 这成功了!经过一番搜索,我发现you have to set your PATH variable inside git-bash,不仅仅是一个环境变量。
    • 哇,神奇。但是这里的答案有点烦人。对于我们大多数人来说,我们不想只做一个 git 分支的副本。以下是复制文件内容的方法:cat [file] | clip。现在你可以在任何你想要的地方按 ctrl+v 了。
    • 很棒的提示!开箱即用!
    • 是的,是的,是的。谢谢。
    【解决方案2】:

    将 thing.txt 复制到剪贴板

    cat thing > /dev/clipboard
    

    将剪贴板内容放入thing.txt

    cat /dev/clipboard > thing.txt
    

    我将这些东西别名为 pbcopy 和 pbpaste,所以我觉得我在我的 mac 上。

    【讨论】:

    • imo这是最好的答案
    • 最佳答案 - 这可以正确处理 utf-8 编码。管道到clip.exe 没有。
    【解决方案3】:

    @madhead 的答案是正确的 - PATH 变量必须在 git-bash 中设置。以下是有关如何解决此问题的详细说明,由 Cairnarvon's answer on superuser 提供:

    要检查 PATH 当前设置的内容:

    > echo $PATH
    

    并设置它,假设是 64 位架构:

    > export PATH="$PATH:/c/Windows/System32:/c/Windows/SysWOW64"
    

    git branch | clip 的结果:

    * master
      dev
      dev_foo
    

    【讨论】:

      【解决方案4】:

      复制 Git Bash 控制台全部内容的最简单方法:
      Right click anywhere on the console > Select All

      相同的键盘快捷键:Ctrl+Shift+A
      通过启用Options > Keys > Ctrl+Shift+letter shortcuts 启用此键盘快捷键。

      薄荷版本:3.4.4 (x86_64-pc-mysys) [Windows 19042]

      【讨论】:

        猜你喜欢
        • 2010-10-19
        • 2010-12-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-12
        相关资源
        最近更新 更多