Linux 命令 tr 介绍

最近在用 gedit 打开一个 log 文件时,提示说有不能显示的字符,导致整个文件都乱码。用 file 命令去查看这个文件的类型,居然显示为二进制文件。明明是一个纯文本文件,怎么会显示为二进制文件呢?估计文件中存在奇特的字节,导致整个文件解析不正常。既然一堆沙子里混入了几颗石头,那么就要把这些石头剔除掉。有很多命令可以处理这个问题,这里我推荐 tr

tr 命令是一个很传统的 Unix 命令。本意就是 translate。也就是用来做字符替换、删除和去重的工作。其基本格式如下:

1
tr OPTION SET1 [SET2]

阅读全文

ADB 常见错误分析

ADB

ADB(Android Debug Bridge) 是 Google 为了调试 Android 设备和 Android 模拟器实例而写的调试工具。整个 ADB 分为 3 个部分,ADB Server,ADB Client 和 ADB Daemon(adbd)。ADB Server 是在主机上运行的一个进程,用来处理 ADB Client 和 ADB Daemon 之间的通信。平常所用的 adb kill-server 就是kill这个进程。ADB Client 就是我们在终端里运行的程序,用于处理用户输入,并和 ADB Server 通信。通常 ADB Client 和 ADB Server 会编译到同一个可执行文件 adb,所以在运行 adb 命令时,会主动检测是否有 ADB Server 这个进程,如果没有,就会默认后台运行 ADB Server。ADB Daemon 是一个运行在 Android 客户端的守护进程,用于和 ADB Server 进行通信,并给主机提供一系列的服务。

在我们平常的开发中,可能会碰到一些 Android 设备无法通过 adb 去连接。这里分析两种常见的连接错误。

阅读全文

在LINUX终端和VIM下复制粘贴

在 GUI 界面下,我们可以很自由的复制粘贴。但是在字符界面下,我们不得不用鼠标选定,然后单击右健,选择复制,再到别处去 Ctrl-v。并且对于那些用没有配置过的 VIM 来说,VIM 的粘贴板和 X Window 的粘贴板还不共享。这在码字的过程中,感觉非常不流畅。下面,我们就尝试解决这个问题。

首先我们得让 VIM 和 X Window 共享一个粘贴板,这样我们就可以像在 GUI 界面下一样去复制粘贴了。我们可以在自己的 VIM 配置文件 .vimrc 里添加这么一行:

1
set clipboard=unamedplus

阅读全文