Linux学习-其他vim使用注意事项
2017-08-29 00:00
239 查看
中文编码的问题
如果你的文件是使用 big5 编码制作的,但 在 vim 的终端接口中你使用的是万国码(utf8), 由于编码的不同,你的中文文件内容当然 就是一堆乱码了!怎么办?这时你得要考虑许多东西啦!有这些:你的Linux系统默认支持的语系数据:这与/etc/locale.conf有关;
你的终端接口(bash)的语系:这与LANG,LC_ALL这几个变量有关;
你的文件原本的编码;
打开终端机的软件,例如在GNOME下面的窗口接口。
通常是这样来修正语系编码的行为:
[dmtsai@study ~]$ LANG=zh_TW.big5 [dmtsai@study ~]$ export LC_ALL=zh_TW.big5
DOS 与 Linux 的断行字符
曾经提到过 DOS 与 Linux 断行字符的不同。 而我们 也可以利用 cat -A 来观察以 DOS (Windows 系统) 创建的文件的特殊格式, 也可以发现在 DOS 使用的断行字符为 ^M$ ,我们称为 CR 与 LF 两个符号。 而在 Linux 下面,则是仅有 LF ($) 这个断行符号。[dmtsai@study ~]$ dos2unix [-kn] file [newfile] [dmtsai@study ~]$ unix2dos [-kn] file [newfile] 选项与参数: -k :保留该文件原本的 mtime 时间格式 (不更新文件上次内容经过修订的时间) -n :保留原本的旧文件,将转换后的内容输出到新文件,如: dos2unix -n old new 范例一:将 /etc/man_db.conf 重新复制到 /tmp/vitest/ 下面,并将其修改成为 dos 断行 [dmtsai@study ~]# cd /tmp/vitest [dmtsai@study vitest]$ cp -a /etc/man_db.conf . [dmtsai@study vitest]$ ll man_db.conf -rw-r--r--. 1 root root 5171 Jun 10 2014 man_db.conf [dmtsai@study vitest]$ unix2dos -k man_db.conf unix2dos: converting file man_db.conf to DOS format ... # 屏幕会显示上述的讯息,说明断行转为 DOS 格式了! [dmtsai@study vitest]$ ll man_db.conf -rw-r--r--. 1 dmtsai dmtsai 5302 Jun 10 2014 man_db.conf # 断行字符多了 ^M ,所以容量增加了! 范例二:将上述的 man_db.conf 转成 Linux 断行字符,并保留旧文件,新文件放于 man_db.conf.linux [dmtsai@study vitest]$ dos2unix -k -n man_db.conf man_db.conf.linux dos2unix: converting file man_db.conf to file man_db.conf.linux in Unix format ... [dmtsai@study vitest]$ ll man_db.conf* -rw-r--r--. 1 dmtsai dmtsai 5302 Jun 10 2014 man_db.conf -rw-r--r--. 1 dmtsai dmtsai 5171 Jun 10 2014 man_db.conf.linux [dmtsai@study vitest]$ file man_db.conf* man_db.conf: ASCII text, with CRLF line terminators # 很清楚说明是 CRLF 断行! man_db.conf.linux: ASCII text
语系编码转换
[dmtsai@study ~]$ iconv --list [dmtsai@study ~]$ iconv -f 原本编码 -t 新编码 filename [-o newfile] 选项与参数: --list :列出 iconv 支持的语系数据 -f :from ,亦即来源之意,后接原本的编码格式; -t :to ,亦即后来的新编码要是什么格式; -o file:如果要保留原本的文件,那么使用 -o 新文件名,可以创建新编码文件。 范例一 : 将/tmp/vitest/vi.big5 转成 utf8 编码吧! [dmtsai@study ~]$ cd /tmp/vitest [dmtsai@study vitest]$ iconv -f big5 -t utf8 vi.big5 -o vi.utf8 [dmtsai@study vitest]$ file vi* vi.big5: ISO-8859 text, with CRLF line terminators vi.utf8: UTF-8 Unicode text, with CRLF line terminators # 是吧!有明显的不同吧
不过如果是要将正体中文的 utf8 转成简体中文的 utf8 编码时,那就得费些功夫了! 举例来 说,如果要将刚刚那个 vi.utf8 转成简体的 utf8 时,可以这样做:
[dmtsai@study vitest]$ iconv -f utf8 -t big5 vi.utf8 | \ > iconv -f big5 -t gb2312 | iconv -f gb2312 -t utf8 -o vi.gb.utf8
相关文章推荐
- 华为E180在linux下使用3G的注意事项(linux in modem Huawei Using E180)
- C++ Primer学习笔记:引用的使用注意事项
- [转]在AIX操作系统上安装使用VIM的注意事项
- [学习笔记]寄存器使用注意事项
- Windows Azure服务购买,收费,使用注意事项及学习资料推荐
- 学习:使用SHAREPOINT对象模型开发时注意事项(转)
- 学习:使用SPSite和SPWeb对象要注意的事项(转)
- LINUX下PHP使用PDO访问MYSQL的连接设置注意事项
- Linux 的学习,vim的使用
- 打造Linux学习环境的注意事项(2010-9-12 更新)
- Unix_Linux学习(1)——vim编辑器的使用学习
- 在Linux/Unix中使用错误保留符需注意的事项(2006-02-17)
- 关于Linux driver中device_create()使用的注意事项
- Windows Azure服务购买,收费,使用注意事项及学习资料推荐
- linux_vim编辑器的使用学习,按李先静老师的系统程序员
- linux下使用ssh管理VPS的注意事项小结
- 使用hibernate时,数据库由MySQL转向使用其他数据库时的注意事项
- 在Linux中使用STL迭代器的一点注意事项
- OPENCV的在LINUX下的安装使用注意事项
- Linux下使用coredump时的注意事项