代码之家  ›  专栏  ›  技术社区  ›  Alberto Zaccagni

为什么有时在bash提示符上粘贴命令时,即使不按Enter键也会执行该命令?

  •  7
  • Alberto Zaccagni  · 技术社区  · 16 年前

    无需按Enter键即可执行该命令。

    为什么会这样?我该如何预防?

    3 回复  |  直到 9 年前
        1
  •  12
  •   alex vasi    16 年前

    因为你用它粘贴了新行字符。它有时很有用,例如,您可以一次复制/粘贴多个命令(长多行脚本)。

    我从来没有想过要阻止这种特殊的行为。这是正常的,也是意料之中的。WYPIWYG-你粘贴的就是你得到的。

        2
  •  9
  •   Laurence Gonsalves    16 年前

    • 使用bash(似乎鲜为人知) 特色要调用它,您可以点击 CTRL-x CTRL-e 如果使用emacs键绑定(默认设置)或 ESC v FCEDIT EDITOR 环境变量。

        3
  •  3
  •   Ron Ruble    16 年前

    防止执行的一种快速方法是键入注释字符#,然后粘贴命令。

    ---对评论的答复

    没错,这只适用于单行命令。如果剪贴板中有多行剪贴板,则可以通过sed管道传输剪贴板数据。

    愚蠢的狂欢把戏#400万加1:

    prompt:$ xclip -o -selection clipboard | sed --regexp-extended 's/^(.*)$/# \1;/'

    将改变这一点:

    for i in *.JPG;

    do echo mv $i ${i/.JPG/.jpg};

    done;

    为此:

    # for i in *.JPG;

    # do echo mv $i ${i/.JPG/.jpg};

    # done;