Chinaunix首页 | 论坛 | 博客
  • 博客访问: 966606
  • 博文数量: 184
  • 博客积分: 10030
  • 博客等级: 上将
  • 技术积分: 1532
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-27 18:32
文章分类

全部博文(184)

文章存档

2009年(1)

2008年(63)

2007年(39)

2006年(79)

2005年(2)

我的朋友

分类:

2006-08-31 10:44:54

某些场合下,用户必须在Linux系统下使用MS-DOS的文本文件. 尽管不借助任何程序也能够在所有系统上使用一个文本文件,但现在的情况是: DOS在每一行的结尾都使用一个换行符和一个回车符作为标记,而Linux(其他的UNIX系统也是这样)在每行的最后仅使用一个换行符. 因此,如果用户使用带有 -b 选项的 VI 编辑器打开一个DOS文本文件(vi -b file),将看到在每一行都有一个^M符号. 这个^M代表了Ctrl+M,它表示是回车符.
 
在Linux系统上,通过使用带有-d选项的tr命令,可以很容易的将DOS文本文件的那些额外的回车符去掉. 比如要将一个名为 file.dos的DOS文本文件转换为file.linux的Linux的文本文件,可以输入下面的命令:
 
tr -d '\015' < file.dos >file.linux
 
在这个命令中,'\015'是用八进制表示的回车符的ASCII码.
 
可以使用tr命令从输入中转化或者删除字符. 当使用了带有-d选项的tr命令时,它从输入数据中删除所有指定的字符. 在 -d 选项之后,必须指定要删除的字符. 同许多UNIX程序一样,tr的读写操作都是针对标准的输入和输出设备. 就像命令里显示的那样,用户必须使用输入和输出的重定向,才能利用tr删除一个文件中所有指定字符,并将输出存储到另一个文件中.
阅读(1609) | 评论(0) | 转发(0) |
0

上一篇:二十四节气的来历[ZT]

下一篇:ASCII 字符表

给主人留下些什么吧!~~