windows操作系统根据文件的扩展名来区分文件类型,而Linux系统不是,Linux通过查看文件内的头部信息来确定文件的类型,而与文件的名字无关。使用gcc 编译test时出现错误,不是操作系统的原因,代码文件命名为text与text.c,对于操作系统来说,它们都是text文件,没有什么区别,但对于编译程序gcc来说就不同了,gcc编译器程序是根据文件的扩展名来判断文件类型的,所以使用gcc test -o test.out命令出现的错误不是操作系统的原因,而是gcc的原因,gcc程序的输入文件一般扩展名为.c .cpp .o .asm .S .s等,具体见gcc帮助文档。
创新互联致力于互联网品牌建设与网络营销,包括成都网站建设、做网站、SEO优化、网络推广、整站优化营销策划推广、电子商务、移动互联网营销等。创新互联为不同类型的客户提供良好的互联网应用定制及解决方案,创新互联核心团队10年专注互联网开发,积累了丰富的网站经验,为广大企业客户提供一站式企业网站建设服务,在网站建设行业内树立了良好口碑。
在Windows下换行时,有两个字符:回车(/r)和换行(/n)。但在Linux下,只有一个换行(/n)
可使用unix2dos和dos2unix命令进行格式的转换:
参数:
-k 保持输出文件和输入文件的日期时间戳不变
-o file 默认模式 . 将file转换,并输出到file
-n infile outfile 新模式. 转换infile, 并输出到outfile
1. unix2dos
假设用vi新建一文本文件,输入123456
[root@centos test]# ls -l a.txt
-rw-r--r-- 1 root root 7 Jan 7 21:31 a.txt
[root@centos test]# hexdump -c a.txt
0000000 1 2 3 4 5 6 /n
0000007
[root@centos test]# unix2dos -n a.txt b.txt
unix2dos: converting file a.txt to file b.txt in DOS format ...
[root@centos test]# ls -l
total 8
-rw-r--r-- 1 root root 7 Jan 7 21:31 a.txt
-rw------- 1 root root 8 Jan 7 21:34 b.txt
[root@centos test]# hexdump -c a.txt
0000000 1 2 3 4 5 6 /n
0000007
[root@centos test]# hexdump -c b.txt
0000000 1 2 3 4 5 6 /r /n
0000008
b.txt是转换后的DOS下的文件
2. dos2unix
[root@centos test]# dos2unix -n b.txt c.txt
dos2unix: converting file b.txt to file c.txt in UNIX format ...
[root@centos test]# ls -l
total 12
-rw-r--r-- 1 root root 7 Jan 7 21:31 a.txt
-rw------- 1 root root 8 Jan 7 21:34 b.txt
-rw------- 1 root root 7 Jan 7 21:38 c.txt
[root@centos test]# hexdump -c b.txt
0000000 1 2 3 4 5 6 /r /n
0000008
[root@centos test]# hexdump -c c.txt
0000000 1 2 3 4 5 6 /n
0000007
c.txt是转换后unix下的文本文件
你好,
linux下文件后缀是.m的编译命令为:
在Linux系统中.m为后缀的文件,是Objective-C源代码文件。
——如有帮助,请采纳一下。
记得给问豆啊!
Windows系统中编辑保存的文本文件,它的回车是实际上是CR和LF两个符号,而Linux系统中编辑的文本文件回车只表示为LF符号,所以Windows系统的文本文件复制到Linux,打开后回车的位置会多出来一个^M的符号,对于一些可执行的文本文件比如脚本文件就会有问题,所以有时就需要进行转换。
将Windows中的文本文件转换为适合Linux的格式,可以用dos2UNIX命令(有的Linux发行版没有这个命令,需要另外安装,我的系统当时是用:yum install dos2unix命令安装的),dos2UNIX命令的用法是:
dos2UNIX -k -n 原来的文件名 转换后的新文件名
参数说明:
-k参数:表示保留文件原来的mtime时间格式,一般会用这个参数
-n参数:保留旧文件并输出到一个新文件
在Linux上查看文件,有时候会出现中文乱码的问题。这是因为文件编码不兼容导致的,需要进行文件转码。
1、用VI查看文件编码,在Vi命令模式以下命令,即可显示文件编码格式。
2、 改写~/.vimrc 文件,在文件中添加以下内容,就可以让vi自动识别UTF-8或者GBK编码的文件。
将window上创建的脚本传输到linux执行时,会出现-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory的错误。
1、vi打开文件,并在命令模式下输入以下命令回车,此时看到的是dos格式。
2、修改文件格式, 同样在vi命令格式下,输入以下修改文件格式。