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

相关推荐
任聪聪33 分钟前
Centos平替系统RockyLinux详细安装教程
linux·运维·centos
zjj5871 小时前
ubuntu虚拟内存
linux·运维·ubuntu
*翊墨*2 小时前
达梦数据库Linux安装
linux·数据库·excel
瑶总迷弟2 小时前
在centos上基于kubeadm部署单master的k8s集群
linux·kubernetes·centos
是小胡嘛3 小时前
华为云CentOS系统中运行http服务器无响应
linux·服务器·c++·http·centos·华为云
lhyzws3 小时前
CENTOS上的网络安全工具(二十九)GPU助力SPARK
linux·spark·gpu算力
学嵌入式的长路3 小时前
正点原子imx6ull移植lvgl v8.3及触摸屏调试
linux·驱动开发·lvgl·imx6ull·触摸屏
馨谙3 小时前
使用 systemd 单元管理容器环境完全指南
linux
石像鬼₧魂石3 小时前
有哪些常见的字典可以用于Hydra的密码破解?
linux·学习·ssh
RXXW_Dor3 小时前
西门子EtherNet/IP 适配器 通过 EtherNet/IP 将第三方控制系统连接到 SIMATIC S7 控制器
linux·网络·tcp/ip