Linux基础命令@echo、tail、重定向符

2024-01-07 18:10:44

echo

概念

??echo 是一个在 Unix、Linux 和类 Unix 操作系统中常用的命令,用于在终端上显示文本或将文本输出到文件中。




语法

echo? 要输出的内容


》无需选项,只有一个参数,表示要输出的内容,复杂内容可以用双引号“ ” 包围起来。




作用

其作用跟C语言中的 print 函数有异曲同工的效果。就是在终端窗口中打印输出结果。



演示一

如下:
在这里插入图片描述
??“ echo hello Linux” 表示,在终端中打印输出“hello Linux”。但是对于这个命令格式,可读性不是好。因为对于用户来说,可能想要将“ hello Linux ”作为一个整体打印出来,但是如上指令中,没有用双引号将打印内容包起来时,可读性可能就有所歧义了。


因此,建议将要打印的内容用 双引号“ ”包裹住,如下:

在这里插入图片描述


演示二

对于echo,有个特殊的情况,如我们要输出打印命令的结果,如:

在这里插入图片描述

我想要输出打印pwd命令结果,即当前的路径。但是结果输出的却是被当做字符串pwd输出打印了。如何输出打印我们想要的效果呢?

这边要用到反引号`了。




反引号`

作用

反引号`也称为飘号,其作用如下:

在这里插入图片描述
用反引号`包裹起来的,便会被认为是命令,因此echo输出的结果是,执行完命令后的结果。




tail

概念

??tail 是一个用于显示文件末尾内容的命令,常用于查看日志文件或实时监控文件变化。




语法

tail? [ -f ? -num ] ? Linux路径


》参数,Linux路径。表示被跟踪的文件路径
》选项 -f 。表示持续跟踪
》选项 -num 。表示要查看从尾部开始的多少行,不填默认为10行

注:选项num,写入命令时是数字。




作用

使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改。

不带选项,演示一

如下,我在test.txt文件中,存入了很多行的信息。但是我只想要查看test.txt文件里倒数的前十行信息,那么便需要 tail 命令了。
输入命令“ tail test.txt”,因为没有带选项,默认是表示查看test.txt的倒数前十行信息:

在这里插入图片描述

其中绿色方框便是test.txt文件的倒数前10行信息。与我们用tail命令显示出来的信息一致。




带选项 -num,演示二

如下命令,表示要查看test.txt文件的倒数前三行信息。

在这里插入图片描述




带选项 -f , 持续跟踪

为了方便演示,我们需要在FinallShell终端里,再添加个窗口,步骤如下:

在这里插入图片描述




添加成功后,将两个窗口分离开,方便演示:

在这里插入图片描述

在左边的窗口,输入命令 “ tail -f test.txt ” 表示查看test.txt文件的倒数前十行信息,并且开启追踪,实时检测test.txt内的内容。

当我们在右边的终端窗口中,向test.txt文件追加信息时,左边的窗口会立马显示出追加的信息。
再如下追加一个,左边的窗口同样的立马便显示了。

在这里插入图片描述

这便是选项 -f 的作用。而当我们要让左边的命令停止追踪时,只需要按下:
ctrl+c
便可以强制停止。





重定向符

概念

在命令行环境中,重定向符号 > 和 >> 用于控制命令的输入和输出。
> :覆盖重定向。它用于将命令的标准输出重定向到指定文件,并且如果文件不存在,则会创建该文件;如果文件已存在,则会将其内容覆盖。

>> :追加重定向。它也用于将命令的标准输出重定向到指定文件,但不会覆盖已存在的文件内容,而是在文件末尾追加新内容。如果文件不存在,则创建该文件;如果存在,则在文件末尾追加内容。




作用

覆盖重定向,>

演示一

如下,用cat命令获取test.txt文件的内容。然后使用命令 “ echo “hello Linux” ” 将命令的结果,覆盖重定向到test.txt文件中,在用cat命令获取test.txt文件的内容,显示如下:

在这里插入图片描述
我们发现,原先文件test.txt的内容都没了,只剩下 “ echo “hello Linux” ” 命令的结果,hello Linux。
即对于覆盖重定向符,> ,输入内容会将原先的内容全部都覆盖掉,只剩下输入的内容。



演示二

我们将当前目录下的所有文件,都重定向到 test.txt 文件中:

在这里插入图片描述

如图所示,需要注意的是:
1、当执行 ls >ls 命令输出的结果包含多个文件或目录,那么 test.txt 文件中的内容会被写成多行,每行对应一个文件或目录。

2、当执行 ls > test.txt 命令并将输出重定向到 test.txt 文件时,文件中包含的是当前目录下的文件和子目录的名称。这意味着,test.txt 中的内容是文件和目录的名字列表,而不是它们的具体内容或作用。




追加重定向,>>

演示一

将命令“ echo “im Linux” ”的结果,追加到test.txt文件中,如下:
在这里插入图片描述
在test.txt原有内容的下一行,追加了命令“ echo “im Linux” ”的结果。并不会对原有的内容造成影响。
注:test,txt文件原内容为:hello Linux)




演示二

如下,我们将命令 ls 的结果重定向到test.txt文件中,然后将根目录 / 下的所有文件追加到test.txt文件中,最终用cat命令获取test.txt文件的内容,如下:
在这里插入图片描述




总结

1、echo

》可以使用echo命令在命令行内输出指定内容
》语法: echo ? 输出的内容
》无需选项,只有一个参数,表示要输出的内容,复杂内容可以用””包围



2、反引号`

》被`包围的内容,会被作为命令执行,而非普通字符



3、tail
》查看文件尾部内容,并可以持续跟踪
》语法: tail ? [ -f -num ] ? Linux路径
》-f:持续跟踪,-num:启动的时候查看尾部多少行,默认10
》Linux路径,表示被查看的文件



4、重定向符

》>,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
》>>,将左侧命令的结果,追加写入到符号右侧指定的文件中

文章来源:https://blog.csdn.net/m0_72484344/article/details/135187737
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。