You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows7下Git Bash粘贴自动换行问题及echo命令写入多行代码求助

嘿,我之前刚好踩过Git Bash粘贴自动回车的坑,另外关于不用编辑器直接用命令写入带换行的内容到文件,也有几个实用的小技巧,分享给你:

解决Git Bash粘贴自动触发回车的问题

这个问题大概率是Git Bash默认的快捷键绑定或者终端换行处理导致的,给你两个解决方案:

  • 调整Git Bash设置(永久解决)
    右键点击Git Bash的标题栏 → 选择「Options」→ 切换到「Keys」标签页,找到和「Paste」相关的设置项。你可以把「Ctrl+Shift+Insert」或者鼠标中键的粘贴动作,改成只执行粘贴,去掉附加回车的选项。保存设置后重启Git Bash就生效了。
  • 临时应急方案
    如果暂时不想改设置,粘贴前先输入read命令并回车,此时终端会进入等待输入的状态,你再用Ctrl+Shift+Insert或中键粘贴内容,粘贴的文本只会显示在终端里不会触发执行,之后按Ctrl+C退出read状态就可以正常操作了。
用命令写入带换行的内容到index.html

不用打开编辑器的话,除了echo,还有更方便的方式,都给你列出来:

  1. 用echo的转义换行符
    Git Bash里的echo支持-e参数来识别转义字符,用\n代表换行,比如:

    echo -e "First line\nSecond line\nCode with break lines" >> index.html
    

    这样写入的内容会自动按\n分割成多行。

  2. 用Here Document(更适合多行内容)
    这个方法不用转义换行,直接输入你想要的内容即可,非常直观:

    cat >> index.html << EOF
    This is line 1
    This is line 2
    Code with break lines here
    EOF
    

    输入完EOF并回车后,中间的所有内容就会原样追加到index.html里,包括换行。

  3. 逐行用echo追加
    如果内容不多,也可以逐行用echo命令追加,每行单独写:

    echo "Line 1" >> index.html
    echo "Line 2" >> index.html
    echo "Code with break lines" >> index.html
    

内容的提问来源于stack exchange,提问作者Let.Simoo

火山引擎 最新活动