linux实践——字符集
一、ASCII码
首先是看得懂ASCII码表:
二 八 十 十六 缩写/字符
0000 0000 0 0 00 NUL(null)
0000 0001 1 1 01 SOH(start of headline)
0000 0010 2 2 02 STX (start of text)
0000 0011 3 3 03 ETX (end of text)
0000 0100 4 4 04 EOT (end of transmission)
0000 0101 5 5 05 ENQ (enquiry)
0000 0110 6 6 06 ACK (acknowledge)
0000 0111 7 7 07 BEL (bell)
0000 1000 10 8 08 BS (backspace)
0000 1001 11 9 09 HT (horizontal tab)
0000 1010 12 10 0A LF
0000 1011 13 11 0B VT (vertical tab)
0000 1100 14 12 0C FF
0000 1101 15 13 0D CR (carriage return)
0000 1110 16 14 0E SO (shift out)
0000 1111 17 15 0F SI (shift in)
0001 0000 20 16 10 DLE (data link escape)
0001 0001 21 17 11 DC1 (device control 1)
0001 0010 22 18 12 DC2 (device control 2)
0001 0011 23 19 13 DC3 (device control 3)
0001 0100 24 20 14 DC4 (device control 4)
0001 0101 25 21 15 NAK
0001 0110 26 22 16 SYN (synchronous idle)
0001 0111 27 23 17 ETB (end of trans. block)
0001 1000 30 24 18 CAN (cancel)
0001 1001 31 25 19 EM (end of medium)
0001 1010 32 26 1A SUB (substitute)
0001 1011 33 27 1B ESC (escape)
0001 1100 34 28 1C FS (file separator)
0001 1101 35 29 1D GS (group separator)
0001 1110 36 30 1E RS (record separator)
0001 1111 37 31 1F US (unit separator)
0010 0000 40 32 20 (space)
0010 0001 41 33 21 !
0010 0010 42 34 22 "
0010 0011 43 35 23 #
0010 0100 44 36 24 $
0010 0101 45 37 25 %
0010 0110 46 38 26 &
0010 0111 47 39 27 '
0010 1000 50 40 28 (
0010 1001 51 41 29 )
0010 1010 52 42 2A *
0010 1011 53 43 2B +
0010 1100 54 44 2C ,
0010 1101 55 45 2D -
0010 1110 56 46 2E .
00101111 57 47 2F /
00110000 60 48 30 0
00110001 61 49 31 1
00110010 62 50 32 2
00110011 63 51 33 3
00110100 64 52 34 4
00110101 65 53 35 5
00110110 66 54 36 6
00110111 67 55 37 7
00111000 70 56 38 8
00111001 71 57 39 9
00111010 72 58 3A :
00111011 73 59 3B ;
00111100 74 60 3C <
00111101 75 61 3D =
00111110 76 62 3E >
00111111 77 63 3F ?
01000000 100 64 40 @
01000001 101 65 41 A
01000010 102 66 42 B
01000011 103 67 43 C
01000100 104 68 44 D
01000101 105 69 45 E
01000110 106 70 46 F
01000111 107 71 47 G
01001000 110 72 48 H
01001001 111 73 49 I
01001010 112 74 4A J
01001011 113 75 4B K
01001100 114 76 4C L
01001101 115 77 4D M
01001110 116 78 4E N
01001111 117 79 4F O
01010000 120 80 50 P
01010001 121 81 51 Q
01010010 122 82 52 R
01010011 123 83 53 S
01010100 124 84 54 T
01010101 125 85 55 U
01010110 126 86 56 V
01010111 127 87 57 W
01011000 130 88 58 X
01011001 131 89 59 Y
01011010 132 90 5A Z
01011011 133 91 5B [
01011100 134 92 5C \
01011101 135 93 5D ]
01011110 136 94 5E ^
01011111 137 95 5F _
01100000 140 96 60 `
01100001 141 97 61 a
01100010 142 98 62 b
01100011 143 99 63 c
01100100 144 100 64 d
01100101 145 101 65 e
01100110 146 102 66 f
01100111 147 103 67 g
01101000 150 104 68 h
01101001 151 105 69 i
01101010 152 106 6A j
01101011 153 107 6B k
01101100 154 108 6C l
01101101 155 109 6D m
01101110 156 110 6E n
01101111 157 111 6F o
01110000 160 112 70 p
01110001 161 113 71 q
01110010 162 114 72 r
01110011 163 115 73 s
01110100 164 116 74 t
01110101 165 117 75 u
01110110 166 118 76 v
01110111 167 119 77 w
01111000 170 120 78 x
01111001 171 121 79 y
01111010 172 122 7A z
01111011 173 123 7B {
01111100 174 124 7C |
01111101 175 125 7D }
01111110 176 126 7E ~
01111111 177 127 7F DEL(delete)
在表中查找出英文字母ABCDEFGHIJKLMNOPQRSTUVWXYZ相对应的十六进制数值为:
41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 51 52 53 54 55 56 57 58 5a
vim test1.txt
%!xxd
%!xxd -r
:wq
cat test1.txt
结果:
二、gb2312编码
gb2312相关编码:http://doc.chacuo.net/gb2312
在进行vim编辑的时候,首先将终端的编码方式修改为gb2312,在终端上面的终端选项中进行修改,如下图所示:
修改之后使用命令locale -a|grep zh_CN查看当前拥有的中文字符集:
如果没有gb2312,则使用命令sudo locale-gen zh_CN安装字符集。这样的话,cat打印的东西就不是乱码了。如果vi进去后还是乱码,可以用export LANG=zh_CN.gb2312就可以啦~
vim test2.txt
%!xxd
%!xxd -r
:wq
cat test1.txt
结果:(若将终端编码方式修改为unicode(UTF-8),则按gb2312编码的字符则为乱码)
三、utf—8编码
utf—8的相关编码:http://www.cr173.com/html/11686_all.html
将刚才修改过的终端编码方式更改为unicode。
vim test3.txt
%!xxd
%!xxd -r
:wq
cat test3.txt
结果:
linux实践——字符集的更多相关文章
- linux实践--字符集
一.ASCII码 首先懂得ASCII码表 二 八 十 十六 缩写/字符 0000 0000 0 0 00 NUL(null) 0000 0001 1 1 01 SOH(start of headlin ...
- 其它综合-使用Putty远程连接管理Linux实践
使用Putty远程连接管理Linux实践 1.获取putty 获取 putty有很多方法,以下是我为大家提供的下载地址: 个人网盘地址,提取码:tz83 官方下载地址 解释: 官方下载的是 zip 压 ...
- linux实践之程序破解
linux实践之程序破解 这次的实践是文件破解,让我们从login可执行文件开始吧! 首先我们执行一下这个可执行程序 ①我们希望在不知道密码的情况下,能够登陆进去.且无论密码是什么,都是提示“on y ...
- linux实践之ELF文件分析
linux实践之ELF文件分析 下面开始elf文件的分析. 我们首先编写一个简单的C代码. 编译链接生成可执行文件. 首先,查看scn15elf.o文件的详细信息. 以16进制形式查看scn15elf ...
- linux系统字符集
Linux中中文乱码问题通常是由于字符集与windows不兼容所引起,windows的中文字符集是双字节的GBK编码linux采用的是3字节的utf-8编码,所以在windows下用工具连接linux ...
- 其他综合-使用Xshell远程连接管理Linux实践
使用Xshell远程连接管理Linux实践 1. Xshell整体优化 1)点击 工具 ,然后选择 选项 2)在 常规 选项中,下面的存放路径根据个人爱好修改(可选默认) 3)在 更新 选项中,将 √ ...
- 【实践报告】Linux实践三
Linux实践——程序破解 一.掌握NOP.JNE.JE.JMP.CMP汇编指令的机器码 NOP:NOP指令即“空指令”.执行到NOP指令时,CPU什么也不做,仅仅当做一个指令执行过去并继续执行NOP ...
- Linux实践:文件破解
Linux实践:文件破解 标签(空格分隔): 20135321余佳源 一.掌握NOP.JNE.JE.JMP.CMP汇编指令的机器码 NOP:NOP指令即"空指令".执行到NOP指令 ...
- [Linux实践] macOS平台Homebrew更新brew update卡死,完美解决
[Linux实践] macOS 平台 Homebrew 更新 brew update 卡死,完美解决 版本2020.01.05 摘要: 使用brew install [软件包]安装软件包时,卡在Upd ...
随机推荐
- jquery miniui , 普加甘特图,流程管理
http://www.miniui.com/docs/quickstart/index.html 普加 甘特图 流程管理 http://www.plusgantt.com/project/demo/P ...
- I/O多路复用——select函数与poll函数
1 区别 同:(1)机制类似,本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理.(2)包含大量文件描述符的数组被整体复制于用户态和内核的地址空间之间,而不论这些文件描述符是否就 ...
- .NET 反射的使用
1.根据类名获取类实例 string className = "Company.BigProgram.BLL.TestClass"; Type type = Type.GetTyp ...
- 获取tomcat上properties文件的内容——方便文件存储位置的修改,解耦和
在java web开发的时候经常会用到读取读取或存放文件,这个文件的默认路径在哪里呢?写死在程序里面显然是可以的,但这样子不利于位于,假如有一天项目从window移植到linux,或者保存文件的路径变 ...
- xamarin.android 给View控件 添加数字提醒效果-BadgeView
本文代码从java项目移植到.net项目 java开源项目:https://github.com/jgilfelt/android-viewbadger using System; using S ...
- Linux / OS X 实用命令
具体可用参数还是用man指令查方便一点,在此不一一列出 图片来自imooc 磁盘相关: df 查看硬盘分区情况,实例 df -h du 查看文件大小情况 du -s /Directory 用户/用户组 ...
- windows内核编程之常用数据结构
1.返回状态 绝大部分的内核api返回值都是一个返回状态,也就是一个错误代码.这个类型为NTSTATUS.我们自己写的函数也大部分这样做. NTSTATUS MyFunction() { NTSTAT ...
- WordCount Analysis
1.Create a new java project, then copy examples folder from /home/hadoop/hadoop-1.0.4/src; Create a ...
- Hadoop,Vertica环境搭建
本打算使用mapr的虚拟机在里面进行开发,使用eclipse进行调试,它的问题是,有时候服务不能完全起来, 如jobtracker和tasktracker,cldb没有起来,重启服务有可能解决. 但另 ...
- Nginx启动、关闭、重新加载脚本
#! /bin/sh # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts the nginx web ...