这个问题是由于 Windows 和 Linux 俩个系统的换行格式引起的。在Windows 下的换行格式为 CRLF(如果是使用 VS cdode的可以看右下角),而在 Linux 下默认的换行格式是 LF。这其中有什么差异呢?当你 “啪” 的一声按下回车键的时候,在 Windows 系统下会在文件中添加 \r\n,而在 Linux 系统下则是在行末添加了 \n。但是由于回车的字符输入是不可见的,只是在视觉上看到了换行,所以挺隐蔽的。

上面的错误也就很明显了,因为编译命令的最后是 mian.go,而在 Windows 系统下回车后,这一行变成了 ……mian.go\r\n,在Linux下编译的时候,只是忽略了 \n 这个换行记号,所以 \r 也被误认为在命令中进行了编译,这就导致了错误。

五、解决方法
直接在Linux环境下编译 (麻烦)
VS Code 可以在右下角点击 CRLF 选中 LF
通常编译脚本不改变,所以可以改变git的通用设置:
git config –global core.autocrlf false
————————————————
版权声明:本文为CSDN博主「nysheng」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_32867271/article/details/97158638

发表评论

邮箱地址不会被公开。 必填项已用*标注