book · linux · 2015-01-11 · yuex

最近看了一本 Linux 方面的 2014 年新书,是 How Linux Work 第二版。一开始看名字,以为是 Linux 内核方面相关的,或者是讲如何自制 Linux 发行版的。但最后发现其实就是讲怎么使用 Linux 的。而且这本书也很特别,从内容上来讲,既不是完全给新手看的,也不是完全给老手看,很是别扭。但好在这本书讲到的所有东西都不是很艰深,很多都是信息性的内容,快速过一遍也只要两三个小时。国内人民邮电已经引入了 中文版 ,今年年底前应该可以和大家见面。

但诚如至圣先师孔子所言:三人行必有我师。这本书还是让我收获了很多。以下撷取其中的一些内容,与大家分享。

使用 mktemp 生成临时文件。只要在 shell 脚本中使用 TEMPFILE=$(mktemp) 就会在 /tmp 中生成一个临时文件,然后可以通过访问 ${TEMPFILE} 进行使用,非常方便。

Shell 脚本的劣势,有以下三点,结合以前的开发经验,还真是这样的:

  • 算术计算,特别是浮点运算,基本不可以原生地做;
  • 字符串处理 ;
  • 数据库操作。

利用 python 速起 http 服务:python -m SimpleHTTPServer。以后给别人传东西就可以不用 U 盘了。

rsync 中 / 的区别:

  • rsync -a dir/ dest_dir 会把 dir 下所有内容拷贝到 dest_dir/ 下
  • rsync -a dir dest_dir 会把 dir 下所有内容拷贝到 dest_dir/dir/

X Window 的替代项目。众所周知,X Window 到现在,时间已经比较长了,不可避免地会有很多历史的包袱,对于平板和智能手机这类的新环境的适应也不会那么灵活,所以有几个新项目出现,以 freedesktop 领衔的 Wayland 和 Canonical 领衔的 Mir

D-Bus 是 Desktop-Bus 的缩写,是一个消息传递系统,在桌面应用之间提供一个进程间通信机制,由 Red Hat 牵头开发。

另有一个技巧,可以把 vim 用作二进制编辑器。如下

  1. vim -b file 打开文件
  2. 执行 :%!xxd 将 ascii 转换为 hex 显示
  3. 在 hex 下进行修改
  4. 执行 :%!xxd -r 将 hex 转换回 ascii
  5. 保存退出

以上。