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]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)