常见压缩格式的区别,及 Linux 下的压缩相关指令

可先浏览加粗部分

*.zip        |    zip 程序压缩打包的档案;  (很常见,但是因为不包含文档名编码信息,跨平台可能会乱码)
*.rar        |    rar 程序压缩打包的档案;(在windows上很常见,但是是商业软件。)
*.gz         |   gzip 程序压缩的档案; (linux目前使用最广泛的压缩格式)
*.bz2        |   bzip2 程序压缩的档案;
*.xz         |    xz 程序压缩的档案;
*.tar        |    tar 程序打包的资料,并没有压缩过;
*.tar.gz     |    tar 程序打包的档案,其中并且经过 gzip 的压缩 (最常见)
*.tar.bz2    |   tar 程序打包的档案,其中并且经过 bzip2 的压缩
*.tar.xz     |   tar 程序打包的档案,其中并且经过 xz 的压缩 (新一代压缩选择)
*.7z         |  7zip 程序压缩打包的档案。

目前最常见的是 tar.gz tar.xz tar.7z 这三种格式。

在回声中重历

高中考虑志向的时候,我最开始想选择电子信息工程,因为小时候就喜欢摆弄各种电子器件,这个方向硬件软件都能玩,就感觉很有趣,只是担心自己高三太放浪形骸考不上。偶然想起在学校阅览室读杂志时,曾被科幻世界2013年12期里沖氏武彦的《在回声中重历》给打动——用耳朵「看见」世界实在是太奇妙了,我当时痴痴地幻想了好几天。

SQL 基础笔记(一)

本笔记整理自《SQL 基础教程》、《MySQL 必知必会》和网上资料。个人笔记不保证正确。

SQL,即结构化查询语言,是为访问与操作关系数据库中的数据而设计的语言。

  1. 关系数据库以行(row)为单位读写数据
  2. SQL 根据功能的不同,可分为三类(其中DML用得最多,增删查改嘛)
    1. DDL(Data Definition Language, 数据定义语言): CREATE/DROP/ALTER
    2. DML(Data Manipulation Language, 数据操作语言): SELECT/INSERT/UPDATE/DELETE
    3. DCL(Data Control Language, 数据控制语言): COMMIT/ROLLBACK/GRANT/REVOKE
  3. SQL 语句要以分号结尾。换行在 SQL 中不表示结束,而等同于空格。
  4. SQL 不区分**关键字(Keyword)**的大小写,但是描述符就不一定了。
    • 这里有个坑:MySQL 中,数据库和表其实就是数据目录下的目录和文件,因而,操作系统的敏感性决定数据库名和表名 是否大小写敏感。这就意味着数据库名和表名在 Windows 中是大小写不敏感的,而在大多数类型的 Unix/Linux 系统中是大小写敏感的。(注意仅指数据库名和表名)可通过修改配置文件的lower_case_table_names属性来统一这一行为。
    • 而字段名、字段内容都是内部数据,是操作系统无关的。它们的大小写敏感性,由 MySQL 的的校对(COLLATE)规则来控制。该规则体现在 MySQL 的 校对字符集(COLLATION)的后缀上:比如 utf8字符集,utf8_general_ci表示不区分大小写,这个是 utf8 字符集默认的校对规则;utf8_general_cs 表示区分大小写,utf8_bin 表示二进制比较,同样也区分大小写 。
  5. SQL 中的字符串和日期需要用单引号引用起来,日期有特定格式年-月-日

修改字符集:set names <字符集名> 记住在 MySQL 中,utf-8mb4 才是完全的 utf-8字符集。

学英语啊学英语

对我而言,学英语是一件挺痛苦的事。从初中开始学英文,可从来不觉得它有趣,主动性也就不强。

直到我开始学计算机,我开始认识到英文是不可避免的。于是尝试了很多方法。

《十二国记》

看完了动画,也看了点小说。最敬佩、最喜欢、最向往的人物是珠晶,也就是供王。能感觉得到她是所有角色中,最自信、方向最明确的,而且她思考一直比较理性。身为富商之女,年仅十二,却能拥有超出所有国民的觉悟,「既然大人们没有勇气,那就由我去当王!」,并最终称王,不得不敬佩。她有句让人难以忘却的台词,「我之所以能过着比别人更好的生活,是因为我担负了相比更沉重的责任。如果没能完成相应的使命,我就会像峰王一样被砍掉脑袋。而祥琼没有认识到这一点,她不想担负责任,却觉得自己应该享受荣华富贵。」

Java 中文编码分析

我们知道 Java 内部使用的是 utf-16 作为它的 char、String 的字符编码方式,这里我们叫它内部字符集。而 utf-16 是变长编码,一个字符的编码被称为一个 code point,它可能是 16 位 —— 一个 code unit,也可能是 32 位 —— 两个 code unit。Java 的 char 类型长度为二字节,它对应的是 code unit。换句话说,一个字符的编码,可能需要用两个 char 来存储。

进程线程协程与并发并行

个人笔记,不保证正确。

每一个进程,都可以看作是一个完整的 Program,它有自己完全独立的内容。不与其他进程直接共享数据。(一个工作(job)可以由多个 process 完成,例如电脑上的qq/360就会有好几个进程,这种程序可能会有一个守护进程,当主进程挂掉,它会自动重启主进程。)

《尘缘》

店小二杀了巡界使,然后离了客栈,入了道德宗,应了一错缘,又给道德宗干了一堆破事,活的浑浑噩噩。

受了一剑斩缘后,本以为终于能求得解脱,谁知造化弄人,自己竟又从地府回得人界。