Linux&Windows字符集区别以及常用的调整方式

Linux字符集操作

查看文件的字符集

file <文件名>

常见输出文件信息:

文件为脚本

Bourne-Again shell script
文件开头为#!/bin/bash

包含了Windows换行符的情况

ASCII text, with CRLF line terminators
CRLF是Windows的换行符为(\r\n). 想要用Linux换行符(\n )

文件为UTF8

UTF-8 Unicode text
文件的编码格式为UTF8, 且文件内包含非ASCII字符集.
如何文件编码格式为UTF8, 但文档内没有非ASCII字符集,那识别出来还是ASCII.
ASCII text

换行符

CR:Carriage Return(运输,返回;回车),对应ASCII中转义字符\r,表示回车; 使用环境: 早期Mac
LF:Linefeed(换行),对应ASCII中转义字符\n,表示换行; 使用环境: Linux
CRLF:Carriage Return & Linefeed,\r\n,表示回车并换行; 使用环境: Windows
所以不同操作系统下对于ASCII码的识别也是不一样的.

相关信息

以前机械打字机. 由两个主要的部分组成: 键盘, 和卷筒.
键盘敲字: 把字母打在纸上.
卷筒控纸: 调整纸的位置, 避免所有的字都打在一个位置上.
一般来说, 敲一个字符, 卷筒会把纸的水平位置向左挪动一格,让下次打字的时候字能打在上一个的右边.
不过排版需要, 键盘上有两个键是专门控制卷筒的.
CR和LF.
Carriage Return, 水平位置回到纸张最左边.
Linefeed, 垂直方向向下滚动一行.
像是我们在电脑上常用的换行操作, 在以前这种机械打字机上要输入两个键. CR+LF, Windows传承了这个习惯, 换行就是CRLF, Linux简化了就用LF来表示.

调节Sublime换行符的风格

类似这种情况是在编辑文档的时候, 换行符用了系统默认的符号.
Preference ==> Settings ==> Default找到
"default_line_ending": "system",
为覆盖原本设置,在用户设置添加:
"default_line_ending": "unix",

在Linux中调节换行风格

yum install -y unix2dos
安装完之后, 可用命令有
unix2dos:把换行转为Windows风格
dos2unix:把换行转为Linux风格
则使用dos2unix把文件转为Linux风格即可.

posted @ 2021-03-31 12:43  Jrri  阅读(984)  评论(0编辑  收藏  举报