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的显示。

相关推荐
---学无止境---9 小时前
Linux中基数树批量查询数据项相关函数的实现
linux
我也想失去烦恼10 小时前
Linux系统/etc/hosts文件中配置了主机解析,但还是无法解析ip
linux·运维·服务器
deng-c-f12 小时前
Linux C/C++ 学习日记(29):IO密集型与CPU密集型、CPU的调度与线程切换
linux·学习·线程·cpu·io密集·cpu密集
报错小能手15 小时前
linux学习笔记(43)网络编程——HTTPS (补充)
linux·网络·学习
报错小能手15 小时前
linux学习笔记(45)git详解
linux·笔记·学习
Maple_land16 小时前
常见Linux环境变量深度解析
linux·运维·服务器·c++·centos
小白银子17 小时前
零基础从头教学Linux(Day 53)
linux·运维·python
skywalk816318 小时前
基于频域的数字盲水印blind-watermark
linux·开发语言·python
Wang's Blog19 小时前
Linux小课堂: 定时与延时执行机制之date、at、sleep 与 crontab 的深度解析
linux·运维·服务器
被漂一组20 小时前
在线解决window和linux对linux远程问题
linux·运维·服务器