命令是一种实用程序,它读取标准输入并同时写入标准输出和一个或多个文件。**该命令的名称来自管道中使用的 T 型分离器。
我们将通过管道将它与其他命令组合使用。
下面是
tee
命令的语法:
$ tee [option]... [file]...
我们将使用
echo
命令生成一些彩色输出,然后使用 tee 命令将其通过管道传输以保存输出:
$ echo -e "\e[1;32m Blogdemo is awesome \e[0m" | tee -a tee_output.txt
我们得到这个输出:
让我们分解命令来理解它:
echo -e:
使用带有
-e标志的**echo
来输出我们的字符串,并启用反斜杠转义的解释
“\e;32m … \e[0m”:
ANSI 转义序列将文本转换为绿色。我们使用了
终端颜色代码
*“32”,*它将前景色更改为绿色
*tee -a:*如果文件不存在则创建一个文件并将文本附加到其中
作为一个基本示例,我们使用
tee
来保存
echo
命令的彩色输出。同样,我们可以将
tee
与其他产生彩色输出或日志的命令一起使用。
3. 使用
grep
**
grep
是在文件中搜索文本或字符串模式的基本命令。**这些模式称为正则表达式。
下面是
grep
命令的语法:
$ grep [options] pattern [files]
让我们创建一个我们将与
grep
一起使用的
sample.txt
文件:
$ cat >> sample.txt
Blogdemo is awesome!!!
接下来,让我们使用
grep
为匹配的字符串着色,然后将输出定向到不同的文件:
$ grep --color=always "awesome" sample.txt > grep_output.txt
这是我们使用
cat
查看输出文件内容时的结果:
在将输出定向到文件时,我们使用
–color=always 和 grep 来保留 ANSI 序列。
默认情况下,
grep
在通过管道传输到文件时从输出中去除颜色。
4. 使用
script
**
script
是用于制作所有终端活动的打字稿的命令。**它记录所有活动,包括输入和输出,直到我们停止它。
它默认将数据保存在打字稿文件中。但是我们可以传递一个参数来将输出保存到不同的文件中。
脚本命令使用两个文件:一个用于终端输出,另一个用于计时信息。
让我们看看
script
命令的语法:
$ script [options] [file]
要在保存到文件时保留 ANSI 字符,让我们使用此命令:
$ script -q /dev/null -c "echo -e '\e[1;32m Blogdemo is awesome \e[0m'" > script_output.txt
这不会给我们任何输出,但我们可以使用
cat
查看创建文件的内容:
分解此命令以了解更多信息:
-q:
–quiet
选项,确保开始和完成消息不会写入标准输出
*/dev/null:*我们使用此路径来利用脚本标签并同时丢弃输出文件
*’\e[1;32m … \e[0m’:
将文本转换为绿色的 ANSI 转义序列。我们使用了终端颜色代码
“32”,*它将前景色更改为绿色
我们可以将
echo
命令替换为任何其他产生彩色输出的命令。
5. 使用
echo
命令显示我们作为参数传递的文本字符。
我们可以将
echo
与指定文件中文本颜色的转义序列组合使用:
$ echo -e "\e[1;32m Blogdemo is awesome \e[0m" > echo_output.txt
这会将文本以绿色保存到
echo_output.txt文件中。
我们用
cat
来查看:
$ cat echo_output.txt
我们使用带有*-e标志的echo来启用反斜杠转义序列的处理。和以前一样,终端颜色代码“32”*用于将文本更改为绿色。
6. 使用ansi2html
**ansi2html
是一个 Linux 程序,可以将 ANSI 日志转换为漂亮的 HTML 页面。**它还将 ANSI 颜色代码转换为 HTML 标签。默认情况下,它支持所有标准颜色和属性。
ansi2html默认不可用,但我们可以通过包管理器安装它。
让我们使用此命令在 Debian、Ubuntu 或 Kali 上安装:
$ sudo apt-get install colorized-logs
在 Red Hat 上,我们可以使用yum
$ yum install colorized-logs
安装后,我们可以使用echo生成彩色输出,然后使用ansi2html将其通过管道将其保存到 HTML 文件中:
$ echo -e "\e[1;32m Blogdemo is awesome \e[0m" | ansi2html > ansi_output.html
这将创建一个新的ansi_output.html文件,我们可以使用任何网络浏览器预览该文件:
7. 使用aha
**aha
(ANSI HTML Adapter)是一个 Linux 工具,可以将 ANSI 转义序列从终端转换为 HTML。**它由 Alexander Matthes 开发,并得到大多数主要 Linux 发行版的支持。
aha默认不可用,但我们可以通过包管理器安装它。
让我们使用此命令在 Debian、Ubuntu 或 Kali 上安装:
$ sudo apt-get install aha
在 Red Hat 上,我们可以使用yum
安装后,我们可以将彩色输出转换为 HTML 并将其保存到文件中:
$ echo -e "\e[1;32m Blogdemo is awesome \e[0m" | aha --black > aha_output.html
这是创建的 HTML 文件的预览。我们可以通过网络浏览器查看:
我们使用–black*标志将页面的背景颜色设置为黑色。*