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,还有更方便的方式,都给你列出来:
用echo的转义换行符
Git Bash里的echo支持-e参数来识别转义字符,用\n代表换行,比如:echo -e "First line\nSecond line\nCode with break lines" >> index.html这样写入的内容会自动按
\n分割成多行。用Here Document(更适合多行内容)
这个方法不用转义换行,直接输入你想要的内容即可,非常直观:cat >> index.html << EOF This is line 1 This is line 2 Code with break lines here EOF输入完
EOF并回车后,中间的所有内容就会原样追加到index.html里,包括换行。逐行用echo追加
如果内容不多,也可以逐行用echo命令追加,每行单独写:echo "Line 1" >> index.html echo "Line 2" >> index.html echo "Code with break lines" >> index.html
内容的提问来源于stack exchange,提问作者Let.Simoo




