相信来看良许文章的都是有使用过 Linux 系统的小伙伴,肯定会在查看文件内容的时候使用到 cat
这个命令,英文 cat 翻译为中文就是猫。但是,在 Linux 系统下,cat
命令并不是中文猫的意思,而是英文单词 concatenate 的缩写,中文翻译为「连接」,主要用于连接查看文件并将文件打印到标准输出。
cat
命令是一个 Unix 系统或类 Unix系统下的文本查看命令,同时也可以配合重定向功能实现合并与复制功能,还可以配合管道功能进行筛选文本功能。它是 GNU Linux 操作系统和类 Linux 操作系统中最常用的命令之一,使用频率非常高,我几乎每天都要用到 cat
命令去查看相关的日志。
但是用过 Windows 系统的cmd
命令的同学就有一个问题,就很烦它的背景全是黑色而且字体一成不变。对于经常使用 cat
命令的编程人员来讲,使用 cat
命令也有这个问题,就是它发送到标准输出不带有任何颜色标记,所有的输出都是统一型号的字体,类似于 Windows 的 cmd
命令窗口-全黑色。特别是我们查看代码文件,关键字没有颜色标记,导致用户阅读非常不方便。
有问题就有相对应的解决方案。为了解决这一个用户体验问题,有开发人员就开发出相对应的 ccat
这个命令。ccat
与 cat
用法非常相似,但是使用 ccat
命令之后,关键字内容会带有颜色,这对于码农来讲非常友好,提高了用户体验。现在ccat
命令还在不断改进中,ccat
已经支持包括 JavaScript,Java,Ruby,Python,Go,C 和 JSON 等多种环境的开发语言,满足了大部分开发同事的实际需求。
讲解完了 ccat
命令的功能和用处,接下来重点是讲解如何下载安装和使用。
1. 安装 Ccat
分为四个步骤:
1)ccat
命令在 AUR 助手里面直接可用,所以如果你的系统里有 AUR 助手的话,可以立马直接安装。但是如果你目前使用的是 Arch 系统,你需要使用 yay
命令就可以完成安装。
Arch 用户软件仓库 通常称为 AUR,AUR 助手是一个包装程序,允许用户从 AUR 存储库安装软件包,而无需手动干预,这个类似于yum包管理工具。
$ yay -S ccat
2)如果用户使用的是其他 Linux 发行版,那么你需要下载解压缩、编译并安装 ccat ,如下所示:
-
第一步:使用如下 wget
命令到 GitHub 开源网站下载源码压缩包
$ wget https://github.com/jingweno/ccat/releases/download/v1.1.0/linux-amd64-1.1.0.tar.gz
-
第二步:使用 tar
解压缩命令解压缩下载的压缩文件
$ tar xfz linux-amd64-1.1.0.tar.gz
-
第三步:使用 cp
命令将 linux-amd64-1.1.0/ccat 可执行文件复制到系统$PATH
中(例如,/usr/local/bin/
)
$ sudo cp linux-amd64-1.1.0/ccat /usr/local/bin/
-
最后一步:还需要使用 chmod
命令 为ccat
命令添加可执行权限。忘记这一步的话,可能无法执行ccat
命令。
$ sudo chmod +x /usr/local/bin/ccat
2. 使用ccat对显示的代码进行着色
因为是基于cat
命令开发的,所以 ccat
命令的使用方法和 cat
命令非常相似,举例如下。
为了实现对比看到明显的效果,我们先用 cat 命令查看文本文件,例如 hello.c 。
$ cat hello.c
使用 cat
命令的效果如下图
长期使用 cat
命令查看文本文件的同事可以立马看出来代码没有任何颜色标记(大家应该对这个结果很熟悉)。现在,再使用刚刚下载的ccat
命令查看同一个文本文件 hello.c ,并查看其如何显示输出。
$ ccat hello.c
使用 ccat
命令查看 hello.c 文件的效果如下图:
您注意到差异了吗?不同之处在于:ccat
使用语法高亮显示输出,而 cat
命令仅以系统的默认主题颜色显示输出。
我们还可以一次显示两个或者多个文件的输出,如下所示。
$ ccat test.txt example.txt
此外,如果您希望以 HTML 格式显示输出。只需在末尾添加 –html
选项。
$ ccat test.txt --html
ccat
命令功能强大到让你无法想象,它不仅能够处理本地文件,我们还可以使用 ccat
命令处理像下面这样直接在网络上显示文件的内容,简称在线处理网络文件。
$ curl https://raw.githubusercontent.com/jingweno/ccat/master/main.go | ccat
如果你对默认的代码颜色不了解,可以使用如下命令查看默认的代码颜色,运行如下命令。
$ ccat --palette
如果您对显示的代码有需要,比如看久了显示屏幕想要设置其他的颜色,您也可以设置自己的喜欢的颜色代码。
$ ccat -G String="_fuchsia_" -G Plaintext="darkteal" hello.c
Tips:在 GitHub平台下载时可能会遇到如下错误
原因是 GitHub平台对 Openssl 工具进行了升级操作,同时停用了相应的下载工具 tlsv1.1,你只需要更新本机的 Openssl 以及 Git 工具即可解决该问题。
3. 替换系统中的cat
如果您喜欢 ccat
命令 并想用 ccat
命令 替换默认的 cat
命令,则只需创建一个别名即可,使用 Linux 系统中最常用的 alias
命令可以做到这一点。
如果是从 Arch Linux 操作系统中的 AUR 安装的,请在 ~/.bashrc
文件中添加以下行。
alias cat=ccat
如果是从需要编译的二进制文件安装的,则在 ~/.bashrc
文件中添加以下行。
alias cat=/usr/local/bin/ccat
最后,运行以下 source
命令以使上诉修改生效……
$ source ~/.bashrc
另外,对于确实有多用户使用的操作系统,想要在整个系统范围内添加它(所有用户都可以使用这个命令),那还可以这么操作,在 /etc/bashrc
文件中(在基于RPM的系统上)或 /etc/profile
(在 Debian 的系统上)文件中添加以上条目,添加完成之后,即可实现多用户使用 ccat
命令……