在本教程中,我们学习了在 Linux 中将文本附加到文件末尾的不同方法。您可以在 Linux 中使用多种方法来实现此目的,但最简单的一种是将命令输出重定向到所需的文件名。使用 >> 字符,您可以将任何命令的结果输出到文本文件。

其他可以实现这一点的方法是使用 tee、awk 和 sed 等 Linux 工具。

将命令或数据的输出重定向到文件末尾

每个基于 Unix 的操作系统都有一个“输出的默认位置”的概念。每个人都称其为“标准输出”或“stdout”,发音为标准输出。您的 shell(可能是 bash 或 zsh)一直在监视该默认输出位置。当你的 shell 在那里看到新的输出时,它会在屏幕上打印出来,这样你就可以看到它。

我们可以使用 >> 运算符将该输出重定向到文件。

程序如下:

使用echo命令将文本附加到文件末尾:

echo 'sample text line' >> filename.txt

将命令输出附加到文件末尾:

command >> filename.txt

在文件末尾添加行

我们可以使用这个重定向字符 >> 添加文本行,或者我们可以将数据和命令输出写入文本文件。使用此方法,如果文件不存在,将创建该文件。

例如:

$ echo "sample line" >> test.txt

$ cat test.txt

sample line

$ echo "sample line 2" >> test.txt

$ cat test.txt

sample line

sample line 2

将命令数据输出结果添加到文件末尾

您还可以添加数据或运行命令并将输出附加到所需文件。在此示例中,我们将使用 date 将当前日期附加到文件中,uname 命令将打印出我们正在使用的 Linux 系统的内核版本,最后使用ls命令输出当前目录结构和文件列表。
您可以使用任何可以将其结果输出到终端的命令,这意味着 Linux 中几乎所有的命令行工具。

$ date >> test.txt

$ cat test.txt

sample line

sample line 2

Tue Jun 25 20:28:51 UTC 2019

$ uname -r >> test.txt

$ cat test.txt

sample line

sample line 2

Tue Jun 25 20:28:51 UTC 2019

3.13.0-170-generic

$ ls >> test.txt

$ cat test.txt

sample line

sample line 2

Tue Jun 25 20:28:51 UTC 2019

3.13.0-170-generic

test.txt

替代方法

让我们看看如何使用 tee、awk 和 sed Linux 实用程序进行附加。

使用 tee 命令行工具

Tee 命令读取标准输入并将其写入标准输出和一个或多个文件。该命令以管道中使用的 T 形分离器命名。它破坏了程序的输出,以便它可以显示和保存在文件中。

$ tee -a test.txt <<< "appended line of text"

vagrant@ubuntu-trusty-64:~$ cat test.txt

appended line of text

使用 awk 命令行工具

awk 是一个实用程序,它使程序员能够以语句的形式编写微小但有效的程序,这些语句定义要在文档的每一行中搜索的文本模式以及在找到匹配项时要执行的操作线。awk 主要用于模式扫描和处理。

$ awk 'BEGIN{ printf "another text line appended" >> "test.txt"  }'

vagrant@ubuntu-trusty-64:~$ cat test.txt

another text line appended

使用 sed 命令行工具

Linux中的sed命令代表流编辑器,它可以对文件执行许多功能,如搜索、查找和替换、插入或删除。通过使用sed,您甚至可以在不打开文件的情况下编辑文件,这是在文件中查找和替换某些内容的更快方法。

$ sed -i '$a yet another text line' test.txt

vagrant@ubuntu-trusty-64:~$ cat test.txt

yet another text line

将多行附加到文件

有几种方法可以一次将多行附加到文件中。
当然,您可以逐行添加:

$ echo "line 1" >> result.txt

$ echo "line 2" >> result.txt

下一个变体是在终端中输入新行:

echo "line 1

line 2

line 3" >> result.txt

另一种方法是打开文件并写入行,直到您键入 EOT:

$ cat <<EOT >> result.txt

line 1

line 2

EOT

在 Linux 中追加到内容的末尾相关推荐

  1. linux中搜索文件内容关键字--转载哈

    linux中搜索文件内容关键字 度娘了下,想找的答案就是这个,发现一堆xxxx的回答,在此记录下,方便以后查阅.谢谢 linux系统里的VI是编辑文本的命令,在vi里查找相应关键字的方法为: /关键字 ...

  2. linux怎么进入文件的末尾,如何在Linux中附加到文件的末尾

    在本教程中,我们学习在Linux中的文件末尾附加文本的不同方法,Linux中有几种方法可以实现这一点,但是最简单的方法是将命令输出重定向到目标文件,使用> >字符,你可以将命令的结果输出到 ...

  3. linux中的读目录,在linux中读取目录内容

    我们如何在 Linux中使用C语言读取目录的内容(子目录和文件名). 这是一个递归程序,以递归方式打印所有子目录和文件的名称. 用法:./ a.out路径名 不检查作为命令行参数提供的初始路径名的错误 ...

  4. linux学习笔记:linux中查看文件内容的命令

    linux中一般用下面这些命令来查看文件: cat 由第一行开始显示文件内容 tac 从最后一行开始显示,可以看出 tac 是 cat 的倒著写! nl 显示的时候,顺道输出行号! more 一页一页 ...

  5. linux中查看文件内容常用的命令

    文章目录 前言 cat more less head tail 前言 大家都知道查看文件,我们常常使用cat,但是这个命令的缺点在于会显示所有文件内容,对于一个大文件来说,也许我们只想看前面几行,这个 ...

  6. linux中浏览文件内容的命令有哪些,linux打开文件命令有哪些

    linux打开文件的命令有:1.cat命令,用于查看文件内容:2.tac命令,从最后一行开始显示:3.nl命令,在显示的时候输出行号:4.more命令,用于一页一页的显示文件内容等. 打开终端程序后直 ...

  7. linux中搜索文件内容关键字

    linux系统里的VI是编辑文本的命令,在vi里查找相应关键字的方法为: /关键字 ,回车即可.此为从文档当前位置向下查找关键字,按n键查找关键字下一个位置: ?关键字,回车即可.此为从文档挡圈位置向 ...

  8. linux 文件名带日期,在linux中追加日期到文件名

    这里有两个问题. 1.将日期作为字符串 这很容易只需使用带有该选项的date命令.我们可以使用反引号捕获变量中的值. $ DATE=`date +%d-%m-%y` 您可以使用date man pag ...

  9. linux中rev命令详解,详解Linux中输出文件内容的rev与tac命令使用

    rev rev 显示最后一个字符显示到第一个字符. 例: 代码如下: [root@localhost www]# cat test 1234 abcd [root@localhost www]# re ...

最新文章

  1. ssm框架app管理平台_后端程序员跨平台应用的前端框架uni-app初探
  2. android PowerManage
  3. gre tunnel源码分析之接收流程
  4. java hive查询_java程序调用hive查询的一个异常
  5. seo 伪原创_胡子哥谈seo优化:那些不被了解的伪原创技巧
  6. 前端学习笔记系列一:1.export default / export const
  7. C++ 基于凸包的Delaunay三角网生成算法
  8. 微信小程序如何引用其他js文件
  9. Linux多线程编程-线程间参数传递
  10. pip缓存下载的包文件
  11. IP地址的组成及简单分类
  12. 图片浏览器java程序_图片浏览器用java实现
  13. 有关古文的C语言编程题,这80道国学题,既经典又有趣!值得珍藏!
  14. php验证码实现的代码怎么写,php验证码实现代码
  15. STM32单片机:定时器TIM输出PWM波
  16. Nginx背景介绍及特点(一)
  17. 行为金融(六):证券市场中的异象
  18. 3070网卡驱动linux教程,Ubuntu 12.04下RT5370无线网卡驱动安装
  19. 数商云分析:“百亿市场”大幅缩水 医疗器械产业未来如何布局
  20. url短网址 java_url.cn短网址生成api接口(腾讯短链接url生成)

热门文章

  1. TypeError: this.getOptions is not a function at Object.lessLoader
  2. 随身车联网——车联网生态新物种(附发布会视频)
  3. 再见了 SELECT *!大厂的 MySQL 查询优化方案,确实牛逼!
  4. python中的aliasing
  5. LOG的含义 : Mysql 之 binlog介绍
  6. 正圆锥体空间方程_电路原理中三相缺相保护器是如何工作的,正负序与它有什么关系...
  7. android pak文件_xpak是什么文件 怎么安装xapk文件 和apk有什么区别
  8. 计算机硬件技术基础——作业四(草稿)
  9. 企业运维之 CDN 内容分发网络
  10. Android9怎样安装xposed,EdXposed 在android 9 上的安装和使用