Linux下读取Windows下保存的文件,报错信息中出现“^M“时如何解决?【由于Windows和Linux的换行方式不同造成的-提供两种转换方式】

Windows 和 Linux 的文本文件使用的换行符不同:

  • Windows 使用 \r\n (回车 + 换行)。
  • Linux 使用 \n (换行)。
    因此,当在 Linux 系统上运行带有 Windows 换行符的脚本或读取相关文件时,可能会出现错误提示,其中的 ^M\r (回车字符)在 Linux 文本中显示的方式。

Windows中使用 Notepad++ 修改换行符的方法:

Linux系统中利用命令dos2unix进行转换的方法

命令格式:

c 复制代码
dos2unix filename

示例如下:

c 复制代码
dos2unix led.sh

检查修改后的文件:

在 Linux 中,可以使用以下命令检查文件换行符:

bash 复制代码
cat -A filename
  • 如果是 Linux 格式,每行末尾应只显示 $
  • 如果是 Windows 格式,会显示 ^M$

示例如下:

bash 复制代码
cat -A /etc/test_gui/gui.conf

当然,这里也可以用vi编辑去检查:

bash 复制代码
vi /etc/test_gui/gui.conf

如果用vi打开,正常的话后面不会有^M的显示。

相关推荐
Wils0nEdwards16 分钟前
Leetcode 查找和最小的 K 对数字
linux·算法·leetcode
皮小白40 分钟前
linux国产机器-麒麟V10系统VNCserver的安装及使用
linux·运维·服务器
w_outlier1 小时前
UDP_TCP
linux·c++·网络协议·udp·tcp
豆是浪个1 小时前
Linux(Centos 7.6)命令详解:ls
linux·运维·服务器
Mr.kanglong2 小时前
【Linux】传输层协议UDP
linux·运维·udp
cui_win2 小时前
Linux性能优化-系列文章-汇总
linux·网络·安全·性能优化
新知图书2 小时前
Linux C/C++编程-获得套接字地址、主机名称和主机信息
linux·运维·服务器
猫猫的小茶馆2 小时前
【数据结构】栈与队列(FIFO)
linux·c语言·数据结构·算法·链表
XWXnb63 小时前
Makefile介绍
linux·运维·服务器
Yana.nice5 小时前
fs.nr_open=65535与fs.file-max=65535两者区别
linux