Linux命令学习总结:dos2unix
来源:互联网 发布:定义变量java 编辑:程序博客网 时间:2024/06/05 17:01
今天第一次接触这个,做个记录,最近觉得linux的东西知道的太少了,不行,得好好看点资料了。
命令简介:
dos2unix是将Windows格式文件转换为Unix、Linux格式的实用命令。Windows格式文件的换行符为\r\n ,而Unix&Linux文件的换行符为\n. dos2unix命令其实就是将文件中的\r\n 转换为\n。
而unix2dos则是和dos2unix互为孪生的一个命令,它是将Linux&Unix格式文件转换为Windows格式文件的命令。
命令语法:
dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]
unix2dos [options] [-c convmode] [-o file ...] [-n infile outfile ...]
命令参数:
此命令参数是Red Hat Enterprise Linux Server release 5.7下dos2unix命令参数,不同版本Linux的dos2nnix命令参数有可能不同。
参数
长参数
描叙
-h
显示命令dos2unix联机帮助信息。
-k
保持文件时间戳不变
-q
静默模式,不输出转换结果信息等
-V
显示命令版本信息
-c
转换模式
-o
在源文件转换,默认参数
-n
保留原本的旧档,将转换后的内容输出到新档案.默认都会直接在原来的文件上修改,
使用示例:
1: 查看dos2unix命令的帮助信息
[root@DB-Server myscript]# man dos2unix
[root@DB-Server myscript]# dos2unix -h
dos2unix Copyright (c) 1994-1995 Benjamin Lin
Copyright (c) 1998 Bernd Johannes Wuebben (Version 3.0)
Copyright (c) 1998 Christian Wurll (Version 3.1)
Usage: dos2unix [-hkqV] [-c convmode] [-o file ...] [-n infile outfile ...]
-h --help give this help
-k --keepdate keep output file date
-q --quiet quiet mode, suppress all warnings
always on in stdin->stdout mode
-V --version display version number
-c --convmode conversion mode
convmode ASCII, 7bit, ISO, Mac, default to ASCII
-l --newline add additional newline in all but Mac convmode
-o --oldfile write to old file
file ... files to convert in old file mode
-n --newfile write to new file
infile original file in new file mode
outfile output file in new file mode
2: dos2unix filename 将Windows格式文本转换为Unix&Linux格式文件
1: [root@DB-Server myscript]# cat -v test.sh
2: . /home/oracle/.bash_profile^M
3: echo ' '^M
4: date^M
5: echo ' '^M
6: ^M
7: sqlplus test/test @/home/oracle/scripts/test.sql^M
8: ^M
9: echo ' '^M
10: date^M
11: echo ' '^M
12: [root@DB-Server myscript]# dos2unix test.sh
13: dos2unix: converting file test.sh to UNIX format ...
14: [root@DB-Server myscript]# cat -v test.sh
15: . /home/oracle/.bash_profile
16: echo ' '
17: date
18: echo ' '
19:
20: sqlplus test/test @/home/oracle/scripts/test.sql
21:
22: echo ' '
23: date
24: echo ' '
3: dos2unix 可以一次转换多个文件
1: dos2unix filename1 filename2 filename3
4: 默认情况下会在源文件上进行转换,如果需要保留源文件,那么可以使用参数-n dos2unix -n oldfilename newfilename
1: [root@DB-Server myscript]# dos2unix -n dosfile linuxfile
2: dos2unix: converting file dosfile to file linuxfile in UNIX format ...
3: [root@DB-Server myscript]# cat -v dosfile
4: it is a windows dos file^M
5: you should convert to unix&linux format^M
6: [root@DB-Server myscript]# cat -v linuxfile
7: it is a windows dos file
8: you should convert to unix&linux format
9: [root@DB-Server myscript]#
5:保持文件时间戳不变
1: [root@DB-Server myscript]# ls -lrt dosfile
2: -rw-r--r-- 1 root root 67 Dec 26 11:46 dosfile
3: [root@DB-Server myscript]# dos2unix dosfile
4: dos2unix: converting file dosfile to UNIX format ...
5: [root@DB-Server myscript]# ls -lrt dosfile
6: -rw-r--r-- 1 root root 65 Dec 26 11:58 dosfile
7: [root@DB-Server myscript]# dos2unix -k dosfile
8: dos2unix: converting file dosfile to UNIX format ...
9: [root@DB-Server myscript]# ls -lrt dosfile
10: -rw-r--r-- 1 root root 65 Dec 26 11:58 dosfile
6:静默模式格式化文件
1: [root@DB-Server myscript]# unix2dos -q dosfile
2:
3: [root@DB-Server myscript]#
dos2unix的下载地址为http://sourceforge.net/projects/dos2unix/ ,可以从上面下载最新版本的dos2unix、unix2dos等命令工具以及相关文档,dos2unix的源码如下所示
1: /*
2:
3: * Name: dos2unix
4:
5: * Documentation:
6:
7: * Remove cr ('\x0d') characters from a file.
8:
9: *
10:
11: * The dos2unix package is distributed under FreeBSD style license.
12:
13: * See also http://www.freebsd.org/copyright/freebsd-license.html
14:
15: * --------
16:
17: *
18:
19: * Copyright (C) 2009-2015 Erwin Waterlander
20:
21: * Copyright (C) 1998 Christian Wurll
22:
23: * Copyright (C) 1998 Bernd Johannes Wuebben
24:
25: * Copyright (C) 1994-1995 Benjamin Lin.
26:
27: * All rights reserved.
28:
29: *
30:
31: * Redistribution and use in source and binary forms, with or without
32:
33: * modification, are permitted provided that the following conditions
34:
35: * are met:
36:
37: * 1. Redistributions of source code must retain the above copyright
38:
39: * notice, this list of conditions and the following disclaimer.
40:
41: * 2. Redistributions in binary form must reproduce the above copyright
42:
43: * notice in the documentation and/or other materials provided with
44:
45: * the distribution.
46:
47: *
48:
49: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY
50:
51: * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
52:
53: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
54:
55: * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE
56:
57: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
58:
59: * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
60:
61: * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
62:
63: * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
64:
65: * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
66:
67: * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
68:
69: * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
70:
71: *
72:
73: * == 1.0 == 1989.10.04 == John Birchfield (jb@koko.csustan.edu)
74:
75: * == 1.1 == 1994.12.20 == Benjamin Lin (blin@socs.uts.edu.au)
76:
- Linux命令学习总结:dos2unix
- Linux命令学习总结:dos2unix
- Linux命令学习总结:dos2unix - unix2dos
- linux学习笔记--dos2unix命令
- Linux命令dos2unix简析
- Linux命令之dos2unix
- Linux命令之dos2unix
- Linux命令之dos2unix
- Linux dos2unix命令
- Linux命令之dos2unix
- 图解Linux命令之--dos2unix命令
- dos2unix命令
- dos2unix命令
- dos2unix命令
- dos2unix命令
- dos2unix命令
- dos2unix命令
- dos2unix命令
- sqlite C/C++ API接口介绍
- SPI总线协议
- Unix/Linux中的read和write函数
- 有关android依赖传递冲突的解决方案
- 关于LinnerLayout动态添加的控件 并且给子控件动态设置Id 、点击的问题
- Linux命令学习总结:dos2unix
- maven + spring 集成 pom.xml配置文件
- 文章标题
- SVN 详解
- 程序包+创建包规范+创建包体+删除程序包
- dateFormat日期格式
- Java 并发编程:线程间的协作(wait/notify/sleep/yield/join)(转)
- css3实现div中的input表单垂直居中 display:flex
- 机房重构之视图