Linux命令(119)之dos2unix
  wwLZeziuqjLR 2023年12月08日 20 0


linux命令之dos2unix

1.dos2unix介绍

linux命令dos2unix是用来将Windows格式文件转换为Linux格式文件的命令

2.dos2unix用法

dos2unix [参数] filename

参数

说明

-k

保留输出文件的时间

3.实例

3.1.转换Windows格式文件为Linux格式文件

有时在Windows环境下编写的Linux shell脚本,跨平台放置Linux环境后,由于结尾符的问题,存在其在Linux平台无法运行的问题。这时就需要转换Windows格式文件为Linux格式文件,可以让其在Linux环境运行。

Windows平台编写的Linux shell脚本放置Linux环境后,查看结尾符,可知Windows格式文件结尾符为^M$

命令:

cat -A test.sh

[root@rhel77 ztj.bak]# ls -l test.sh 
-rwxr-xr-x 1 root root 26 Nov 10 20:03 test.sh
[root@rhel77 ztj.bak]# 
[root@rhel77 ztj.bak]# cat -A test.sh 
#!/bin/bash^M$
echo "test"^M$
[root@rhel77 ztj.bak]#

转换Windows格式文件为Linux格式文件(保留原始时间)

dos2unix -k test.sh

[root@rhel77 ztj.bak]# dos2unix -k test.sh 
dos2unix: converting file test.sh to Unix format ...
[root@rhel77 ztj.bak]# ls -l test.sh 
-rwxr-xr-x 1 root root 24 Nov 10 20:03 test.sh
[root@rhel77 ztj.bak]#

转换为Linux格式文件后,查看结尾符,可知Linux格式文件结尾符为$

命令:

cat -A test.sh

[root@rhel77 ztj.bak]# cat -A test.sh 
#!/bin/bash$
echo "test"$
[root@rhel77 ztj.bak]#

运行

sh test.sh

[root@rhel77 ztj.bak]# sh test.sh 
test
[root@rhel77 ztj.bak]#

3.2.查看其帮助信息

命令:

dos2unix --help

[root@rhel77 ztj.bak]# dos2unix --help
dos2unix 6.0.3 (2013-01-25)
Usage: dos2unix [options] [file ...] [-n infile outfile ...]
 -ascii                convert only line breaks (default)
 -iso                  conversion between DOS and ISO-8859-1 character set
   -1252               Use Windows code page 1252 (Western European)
   -437                Use DOS code page 437 (US) (default)
   -850                Use DOS code page 850 (Western European)
   -860                Use DOS code page 860 (Portuguese)
   -863                Use DOS code page 863 (French Canadian)
   -865                Use DOS code page 865 (Nordic)
 -7                    Convert 8 bit characters to 7 bit space
 -c, --convmode        conversion mode
   convmode            ascii, 7bit, iso, mac, default to ascii
 -f, --force           force conversion of binary files
 -h, --help            give this help
 -k, --keepdate        keep output file date
 -L, --license         display software license
 -l, --newline         add additional newline
 -m, --add-bom         add UTF-8 Byte Order Mark
 -n, --newfile         write to new file
   infile              original file in new file mode
   outfile             output file in new file mode
 -o, --oldfile         write to old file
   file ...            files to convert in old file mode
 -q, --quiet           quiet mode, suppress all warnings
                       always on in stdio mode
 -s, --safe            skip binary files (default)
 -F, --follow-symlink  follow symbolic links and convert the targets
 -R, --replace-symlink replace symbolic links with converted files
                       (original target files remain unchanged)
 -S, --skip-symlink    keep symbolic links and targets unchanged (default)
 -V, --version         display version number
[root@rhel77 ztj.bak]#

3.3.查看其版本信息

命令:

dos2unix -V

[root@rhel77 ztj.bak]# dos2unix -V
dos2unix 6.0.3 (2013-01-25)
With Unicode UTF-16 support.
With native language support.
LOCALEDIR: /usr/share/locale
[root@rhel77 ztj.bak]#

如果要把Linux环境shell脚本转换为Windows格式,使用unix2dos实现,unix2dos命令用法可通过unix2dos --help查看。unix2dos命令了解即可,现实中99.99%用不到

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月08日 0

暂无评论

推荐阅读
wwLZeziuqjLR