02 DOS (Windows 系统) 与 Linux 的断行字符(即换行符);linux文件后有个^M怎么去掉

02 DOS (Windows 系统) 与 Linux 的断行字符(即换行符);linux文件后有个^M怎么去掉,第1张

02 DOS (Windows 系统) 与 Linux 的断行字符(即换行符);linux文件后有个^M怎么去掉

DOS 系统 与 Linux 的断行字符

DOS (Windows 系统) 与 Linux 断行字符(换行符)的不同。

  • DOS (Windows 系统) 使用的断行字符为 ^M$
  • Linux系统 使用的断行字符为 $

^M = CR
$ = LF

大部分编程人员都是在Dos系统开发,而在linux系统发布。所以经常会遇见换行符的问题。

在 Linux 底下的指令在开始执行时,他的判断依据是 『Enter』,而 Linux 的 Enter 为 LF 符号, 不过,由于 DOS 的断行符号是 CRLF ,也就是多了一个 ^M 的符号出来。 在这样的情况下,如果是一个 shell script 的程序档案,可能造成『程序无法执行』的状态~ 因为他会误判程序所下达的指令内容啊!

通过简单的指令进行格式的转换

命令:dos2unix 或 unix2dos
选项与参数:
-k :保留该档案原本的 mtime 时间格式 (不更新档案上次内容经过修订的时间)
-n :保留原本的旧档,将转换后的内容输出到新档案,如: dos2unix -n old new

dos2unix [-kn] file [newfile]
unix2dos [-kn] file [newfile]

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/3996897.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-10-22
下一篇 2022-10-22

发表评论

登录后才能评论

评论列表(0条)

保存