DOS/
Windows
和Linux/Unix的文件换行回车格式不同,基于 DOS/
Windows
的文本文件在每一行末尾有一个 CR (回车)和 LF (换行),而 UNIX 文本只有一个换行。
1 )、把Dos/Windows 下的文件移至Linux/Unix系统
虽然很多程序不在乎 DOS/Windows格式的 CR/LF文本文件,但是有几个程序却在乎——最著名的是 bash ,只要一遇到回车,它就会出问题。以下 sed调用将把 DOS/Windows格式的文本转换成可信赖的 UNIX 格式:
$ sed -e 's/.$//' mydos.txt > myunix.txt (有可能吧最后一行以一些字符去掉了,要检测下)
该脚本的工作原理很简单:替代规则表达式与一行的最末字符匹配,而该字符恰好就是回车。我们用空字符替换它,从而将其从输出中彻底删除。如果使用该脚本并注意到已经删除了输出中每行的最末字符,那么,您就指定了已经是 UNIX格式的文本文件。也就没必要那样做了!
2 )、把Linux/UNIX文本移至 Windows系统,使用以下脚本执行必需的格式转换:
$ sed -e 's/$/\r/' myunix.txt > mydos.txt
在该脚本中,'$' 规则表达式将与行的末尾匹配,而 '\r' 告诉 sed在其之前插入一个回车。在换行之前插入回车,立即,每一行就以 CR/LF结束。请注意,仅当使用 GNU sed 3.02.80或以后的版本时,才会用 CR 替换 '\r'.
iconv 的使用方法
iconv---编码转换
用法: iconv [选项...] [文件...]
有如下选项可用:
输入/输出格式规范:
-f, --from-code=名称 原始文本编码
-t, --to-code=名称 输出编码
信息:
-l, --list 列举所有已知的字符集
输出控制:
-c 从输出中忽略无效的字符
-o, --output=FILE 输出文件
-s, --silent 关闭警告
--verbose 打印进度信息
-?, --help 给出该系统求助列表
--usage 给出简要的用法信息
-V, --version 打印程序版本号
例子:
iconv -c -f utf-8 -t gb2312 aaa.txt >bbb.txt
这个命令读取aaa.txt文件,从utf-8编码转换为gb2312编码,忽略无效的字符,其输出定向到bbb.txt文件。
utf-8 和 gb2312 在 windows 上看是一样的。在linux下是有区别的。粘贴、复制utf-8编码的字都会改变其编码,变为gb2312(windows下)。只有通过ftp 才能保证它的编码不变化。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/65250/showart_1949928.html
分享到:
相关推荐
Linux 下 Oracle 中文乱码字符集设置 Linux 下的 Oracle 数据库在导入数据库时出现中文乱码问题,这是因为 Oracle 数据库中的字符集格式不支持中文。解决方法是通过修改字符集格式,将其修改成支持中文的格式,这样...
当装完oracle11g由于当时装的匆忙发现数据库的编码不对,显示编码为AL32UTF,要想显示中文需要改成ZHS16GBK.
本文将根据提供的文件信息,详细解析Linux中的字符集管理及其配置方法。 #### 一、字符集基础知识 **1. 字符集定义:** 字符集是指用于表示文字的一组符号集合。在计算机科学领域,字符集是用于编码文本的基础,它...
在处理这些文件时,确保字符集的正确性至关重要,因为字符集不匹配可能导致数据导入后的乱码问题。"查看oracle dmp字符集的小工具"就是针对这一需求开发的实用程序。 该工具的特色在于它的绿色小巧,无需安装即可...
linux 字符集转换脚本,稍微修改脚本即可批量修改文件解决字符编码导致的文件乱码问题
Linux 转换 Windows 文件编码格式脚本 Linux 转换 Windows 文件编码格式脚本是将 Windows 上的文件编码格式转换为 UTF-8 编码,以便在移植 Windows 代码到 Linux 下时避免注释代码乱码和编码格式引起的编译错误。 ...
Linux下修改MySQL字符集 1.查找MySQL的cnf文件的位置 find / -iname '*.cnf' -print /usr/share/mysql/my-innodb-heavy-4G.cnf /usr/share/mysql/my-large.cnf /usr/share/mysql/my-small.cnf /usr/share/mysql/...
"Linux上加载Windows文件系统的两种方法" 在 Linux 操作系统中,我们经常需要加载 Windows 文件系统,以便读取或写入 Windows 分区中的文件。在这篇文章中,我们将介绍在 Linux 平台上加载 Windows 文件系统的两种...
在 Linux 系统中,中文文件在 ssh 终端中显示为乱码,这是由于 SSH 客户端和 Linux 服务器之间的字符集不同所导致的。解决这个问题,需要修改 Linux 系统的默认字符集,使其与 Windows 系统的一致。 本文档提供了两...
《GB18030字符集详解及其码表解析》 GB18030,全称为《信息技术——汉字编码字符集——基本集的扩充》,是中国国家强制性标准,是GBK字符集的进一步扩展,旨在支持更多的汉字以及少数民族文字。在IT领域,尤其是...
修改linux系统客户端、服务端字符集详细操作步骤。
标题中提到的“Linux编码文件”主要指的是与系统字符集设置相关的文件。在Linux中,这些文件通常位于`/usr/lib/locale`目录下。此目录包含了系统支持的所有字符集信息,使得系统能够正确显示和处理不同语言的文本。 ...
为了解决这个问题,这个名为"nx2xp"的程序可能是用Python、Perl、awk或其他类似脚本语言编写的,其工作原理可能是读取Linux格式的文件,然后在每一行末尾添加缺失的CR字符,从而将其转换为Windows可识别的格式。...
- **simsun.ttc**:这是一个包含宋体的TrueType Collection(TTC)字体文件,适用于Windows系统。在Linux环境下,你需要确保系统能识别并使用这种字体,或者替换为系统支持的中文字体。 3. **解决方案**: - **...
1. 打开MySQL的配置文件,通常位于`/etc/mysql/my.cnf`(Linux系统)或`C:\ProgramData\MySQL\MySQL Server x.x\my.ini`(Windows系统)。 2. 在`[mysqld]`节下添加或修改以下行: ``` character_set_server = utf...
txt文本文件字符集格式转换(GBK等格式转UTF8) 需要java环境(也就是要求本机安装有jdk并配置好环境变量), 执行语句格式:java txttoutf test.txt test8888.txt 其中txttoutf是java类名(也是程序文件), test.txt...
txt文本文件字符集格式转换(GBK等格式转UTF),java语句开发,运行需要java环境, DOS下运行命令:java txttoutf test.txt test8888.txt(test.txt是原始文件,test8888.txt是处理后UTF8格式的txt文件)
- 在Windows平台上,则需要修改`sqlloc.rs`文件来指定字符集等设置。 例如,在`sqlloc.rs`文件中设置默认的字符集为`cp850`: ```plaintext sqlsrv.default_characterset: cp850 ``` 然后执行以下命令来应用这些...
Oracle数据库系统支持多种字符集,以适应全球化的数据存储需求。字符集定义了数据库如何存储和显示字符,对于处理多语言环境尤为重要。在某些情况下,用户可能需要在客户端侧更改字符集,以便正确地显示或处理特定...
总之,字符编码和字符集是理解计算机处理文本的基础,而正确设置Linux系统中的字符集是确保中文等多语言环境正常工作的重要环节。在CentOS7中,通过安装必要的中文支持软件包,修改配置文件并设置`LANG`环境变量,...