linux 输出到文件 新,如何将Linux命令输出保存到文件的两种方法

本篇文章分享了如何将Linux命令行输出保存到文件中。文章分享了两种方法:一种是使用Linux IO重定向符号,一种是使用tee命令。tee命令比Linux IO重定向符号更好用。

当您在Linux终端中运行命令或脚本时,它将在屏幕上打印输出以供您立即查看。

有时您需要将输出保存到文件中以备将来参考。一般情况下很多人都使用复制粘贴,但是这种效率太低,本篇文章分享一个更好的方法:将Linux命令行输出保存到文件中。

方法1:使用重定向将命令输出保存到Linux中的文件

在linux命令行中,重定向使用>和>>来表示。

>将命令输出重定向到文件,替换该文件上的所有现有内容。

>>重定向将命令输出添加到文件现有内容(如果有)的末尾。

使用STDOUT重定向运算符>将输出重定向到如下文件:

command > file.txt

如果file.txt不存在,它将自动创建。如果对同一文件再次使用>重定向,则文件内容将被新的输出替换。

下面的示例将更好地演示它。它首先保存ls -l命令的输出。然后,将其内容替换为ls * .c命令的输出。

2e1aef18954b27ac468f02295107398a.png

如果在保存脚本或命令的输出时不想丢失现有文件的内容,请在附加模式下使用带有>>的重定向操作。

command >> file.txt

这个例子更好地展示了它:

0987c13e716ee3fe416c27060e0d56db.png

即使文件不存在,它也会自动创建。

温馨提示:将Linux命令输出以及错误保存到文件中

如果您的Linux命令返回错误,则不会将其保存在文件中。您可以使用2>&1将命令输出和命令错误都保存在同一文件中,如下所示:

command> file.txt 2>&1

基本上,0代表标准输入,1代表标准输出,2代表标准错误。在这里,您要将标准错误(2)重定向(>)到与标准输出(1)相同的地址(&)。

方法2:使用tee命令显示输出并将其保存到文件中

顺便说一句,您是否注意到当您将命令输出发送到文件时,您再也无法在显示屏上看到它了吗?Linux中的tee命令可以为您解决此问题。

就像将水流发送到两个方向的三通管一样,Tee命令将输出发送到显示器以及文件(或作为另一个命令的输入)。您可以像这样使用它:

command | tee file.txt

同样,如果文件尚不存在,将自动创建该文件。

您还可以按以下方式在带有选项-a的附加模式下使用tee命令:

command | tee -a file.txt

让我用一些易于遵循的示例来演示它:

3db1e41ae398f64dda9624a0dbe81ba3.png

我在示例中使用了简单的Linux命令。但是请放心,您也可以使用这些方法来保存bash脚本的输出。

注意:在将命令输出保存到文件时,避免管道陷井

您可能熟悉管道重定向。您可以使用它来组合Linux命令,但不能将输出通过管道传输到文件。找不到文件名命令将导致错误:

77ecb0b13f2f18e3ed6600479ed798fa.png

这是因为管道将一个命令的输出重定向到另一命令的输入。在这种情况下,您可以在等待命令时给它一个文件名。

如果您不熟悉Linux命令行,希望本快速教程对您的Linux知识有所帮助。I/O重定向是一个应注意的基本概念。

  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值