如何查看文件是dos格式还是unix格式的?

一、背景

由于windows和linux对换行的标识不一样,不同系统的代码传递导致代码格式的改变中可能会带来程序无法正常编译通过的问题。因此根据一些编译的错误提示,可以定位到是文件格式的问题,要对程序的文本文件进行转换。

二、解决方法

windows标识一行的结束用的是回车换行符,即‘\r\n‘,也叫做CRLF。linux对一行结束的标识则只有换行,即‘\n‘,也就是LF。将程序从windows下copy至linux下时,只需要使用如下命令对所有的文件进行格式转换即可(参考[1])。

   find . -type f -exec dos2unix {} \;

三、查看文件类型的方法

3.1windows下使用notepad++的话,可以设置显示所有字符(参考[2]),notepad++右下角会显示文件类型。

3.2linux下使用vim(参考[3])

使用vim打开文件,输入:set ff?。根据返回结果可以文件类型

3.3linux下使用gedit

使用gedit打开文件,搜索‘\r\n‘,看每行末尾是否存在。存在则通常是dos类型,不存在则是unix类型。

四、参考文献

[1]linux - dos2Unix command on entire directory - Stack Overflow

[2]3.10. Notepad++支持显示回车符,换行符,TAB键,行首,行尾等特殊字符

[3]File format - Vim Tips Wiki

时间: 2024-10-02 19:51:22

如何查看文件是dos格式还是unix格式的?的相关文章

将配置文件由Dos存为unix格式

将配置文件由Dos存为unix格式 问题:在Windows环境写好的脚本或配置文件,上传到Linux服务器后,无法正常使用. 原因:在Windows环境下编写的脚本文件默认脚本文件格式是dos格式,当文件上传到Linux环境后会因为格式问题而报错.常见的问题还发生rules\sigs等解码配置文件上. 解决:vi修改文件格式为unix,保存 :set ff=unix 原文地址:https://www.cnblogs.com/zhangyunfei-blog/p/9288540.html

【转】Linux下的文本dos格式转Unix格式,去除^M符号

原文网址:http://blog.csdn.net/kobejayandy/article/details/13291525 问:我在Windows中通过FTP传一个文本文件到Linux中,但是打开文本文件后每行最后都有^M的标志.由于很长,用编辑器去除太麻烦,有什么解决办法呢? 答:为了解决这个问题,Linux下专门有两个工具可以互换Windows格式和Linux格式,它们分别是dos2unix和unix2dos.比如用下面的命令就可以将文件名为“filename”文件从Windows格式转换

Linux下的文本dos格式转Unix格式,去除^M符号

问:我在Windows中通过FTP传一个文本文件到Linux中,但是打开文本文件后每行最后都有^M的标志.由于很长,用编辑器去除太麻烦,有什么解决办法呢? 答:为了解决这个问题,Linux下专门有两个工具可以互换Windows格式和Linux格式,它们分别是dos2unix和unix2dos.比如用下面的命令就可以将文件名为"filename"文件从Windows格式转换为Linux文本格式. 正文: 在Linux下,不可避免的会用VIM打开一些windows下编辑过的文本文件.我们会

vim去除^M及dos文件改为unix格式

常识:Unix及类Unix系统里,每行结尾只有换行“\n”,Windows系统里面,每行结尾是换行+回车“\n\r”. 利用Linux下的vim编辑器,可以方便的在dos文件.unix文件之间进行切换,且可以便利的去除恼人的^M符. vim file 然后, :set ff? 用于查看当前文件是dos格式还是unix格式,显示如下: 强制切换为unix格式,然后保存即可: :set ff=unix #转换为unix格式    :wq #保存.退出 藉此,done! 1.显示行数 :set nu

dos格式转变为unix格式 总结

当我们在windows 下编写了脚本,提交到服务器之后,更新下来之后,当你运行的的时候会看到,说这个文件不存在,但那个文件确实是存在的,那是什么原因,其实就是文件的格式导致,因为我们在windows 编写了之后我们更新到linux编写的时候她的格式还是dos 所以我们要将这个dos的格式转变为和系统一样的格式即unix格式: 1.当我们使用vim打开一个文件,如果打开之后vim 文本编辑器下面没有任何的提示则说明这个文本的格式和你的系统的格式是一致,如果在vim编辑器的下边出现 "/tmp/te

[转] 将DOS格式文本文件转换成UNIX格式

点击此处阅读原文 用途说明 dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MAC to UNIX text file format converter).DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0A.而Unix下的文本文件是以\n作为断行标志的,表示成十六进制就是 0A.DOS格式的文本文件在Linux底下,用较低版本的vi打开时行尾会显示^M,而且很多命令都无法很好的处理这种格式的文件,如果是个shell脚本,.而Unix格式的文本文

Linux命令之dos2unix - 将DOS格式文本文件转换成UNIX格式 用途说明

dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MAC to UNIX text file format converter).DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D 0A.而Unix下的文本文件是以\n作为断行标志的,表示成十六进制就是 0A.DOS格式的文本文件在Linux底下,用较低版本的vi打开时行尾会显示^M,而且很多命令都无法很好的处理这种格式的文件,如果是个shell脚本,.而Unix格式的文本文件在Windows下用Not

DOS当中的基本操作命令,如何切换磁盘,如何查看文件和文件夹,如何清屏,进入文件夹的命令,javac是什么意思,作用是什么?DOS如何建文件夹?退出文件夹?

如何切换磁盘:使用盘符+:举例 d: 如何查看文件和文件夹 dir/w 如何清屏: cls (clear screen) 进入文件夹的命令cd ,举例cd JDK javac是什么意思,c 是compile(编译),就是用这个程序编译Java文件 DOS如何建文件夹?md(make directory) 退出文件夹:两种方法,一种是cd..另一种是cd\ *符号,是通配符,可以表示任意多个字符 Dos打开记事本命令notepad 查看iP地址的命令ipconfig 查看电脑之间是否联通命令pin

Linux下查看文件编码,文件编码格式转换和文件名编码转换

linux相关   2008-10-07 10:46   阅读1392   评论0   字号: 大大  中中  小小  如果你需要在Linux中 操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linux一般都是 UTF-8.下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换. 查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1.在Vim中可以直接查看文件编码 :set file