有时在windows 下编写好一个脚本,复制到linux 里不能正常运行,表面上也看不出脚本语法问题,但就是不能正常运行;有时linux 下的某个脚本原本能够正常运行,但是从windows 的某处(从文件或邮箱里)复制了几句命令,粘贴到linux 的这个脚本里,保存后,这个脚本也变得不能正常运行。出现这两种状况(其实是一种状况:linux 中的脚本包含了来自windows 的内容)的基本缘由是两种系统的文件格式不一样。
linux
在windows 下,文件的换行符为\r\n,而在linux 下,它是\n。这个差别形成了脚本错误。当一个linux 下的文件包含了来自windows 的内容,或者这个文件就来自windows,用命令windows
dos2unix <文件名>
转换其格式,文件格式差别的问题就解决了。
bash