如何优化Windows上Ubuntu Bash终端的剪贴板复制格式?
解决Windows Ubuntu Bash终端复制粘贴换行丢失的问题
我之前也碰到过这个烦人的小问题!在Windows上用Ubuntu Bash(WSL)时,手动复制终端输出经常会丢换行,比如你运行curl -IL aol.com后复制的内容,粘贴后全挤成一行,完全看不出原本的输出结构。下面是几个亲测有效的解决办法:
方法1:用clip.exe直接导出到剪贴板(最省心)
WSL可以直接调用Windows自带的clip.exe工具,它能自动处理Linux和Windows的换行符差异,让复制的内容完美保留格式。比如你要复制curl的输出,直接运行:
curl -IL aol.com | clip.exe
之后不管粘贴到记事本、Word还是其他地方,换行都会正常显示,不用手动选内容复制,一步到位。
方法2:调整终端的复制模式
如果你习惯手动选中内容复制,可以检查下终端的设置:
- 右键点击Ubuntu Bash的标题栏,选择属性。
- 在选项标签页里,找到编辑选项,确保勾选「快速编辑模式」和「插入模式」,同时确认「自动换行」处于开启状态。
- 选中内容时尽量用鼠标拖动覆盖完整行,终端会自动识别换行,不过这个方法偶尔还是会出问题,不如方法1稳定。
方法3:先保存到文件再复制
如果上面两种方法都不适用,你可以先把输出存到文件里,再从文件里复制:
curl -IL aol.com > output.txt
之后可以用cat output.txt在终端查看,或者直接在Windows系统里找到这个文件(路径一般是C:\Users\你的用户名\AppData\Local\Packages\CanonicalGroupLimited...\LocalState\rootfs\home\你的用户名\output.txt),打开后复制内容,换行肯定是正常的。
这个问题本质是Linux的\n换行符和Windows的\r\n换行符不兼容导致的,clip.exe会自动完成转换,所以用它是最靠谱的方案。
内容的提问来源于stack exchange,提问作者fossett
相关产品推荐
相关产品推荐

